asp.net core控制器过滤器

it2023-07-21  68

建一个类 继承 IActionFilter 

方法执行前/后 俩个方法写上  有逻辑的补充

示例是:第三方调用接口后 如果需要返回内容 在请求头里面 加 不为空参数NeedRtn 作为标识  返回成功消息

public class ThirdActionFilter: IActionFilter     {         public void OnActionExecuted(ActionExecutedContext context)         {             //执行之后 如果 第三方 需要返回 json              var httpContext = context.HttpContext;             var Headers = httpContext.Request.Headers;             if (!string.IsNullOrEmpty(Headers["NeedRtn"]))             {                 var res = context.Result;                 if (res is EmptyResult)                 {                     context.Result = new JsonResult(new { Message = "成功" });                 }

            }         }

        public void OnActionExecuting(ActionExecutingContext context)         {                      }     }

 

 

写好之后 需要在  statrtup 里面去 注册服务

 

services.AddMvc(options => { options.Filters.Add(typeof(ThirdActionFilter)); })

最新回复(0)