.Net Core Api 操作过滤器(行为过滤器) +.net core Api过滤器获取QueryString值 或 获取请求标头数据

.Net Core API操作过滤器(行为过滤器)

  --分别在操作方法之前和之后执行(提供了一个进入之前(before)和进入之后(after)介入功能)

  继承Attribute类,实现IActionFilter接口,重写OnActionExecuting 和 OnActionExecuted方法。

    或者直接继承ActionFilterAttribute类,观察源码可知,该类继承了Attribute类,而且还实现IActionFilter,IResultFilter接口。(异步的话实现IAsyncActionFilter接口,重写OnActionExecutionAsync方法)

1、创建行为过滤器

    需要安装 Microsoft.AspNetCore.Mvc.Abstractions

    实现IActionFilter接口  右击点“显式实现所有成员”

 

2、编写过滤器

 

2、实现过滤器   --控制器中

 

 

二、.net core Api过滤器获取QueryString值 或 获取请求标头数据

 

 取值:

1、获取QueryString中token

  

//获取QueryString中token    
            string token = context.HttpContext.Request.Query["token"];

 

2、获取请求标头数据

//从header中获取token
            string token = "";
            //需引用  Microsoft.Extensions.Primitives.StringValues
            Microsoft.Extensions.Primitives.StringValues headerToken;
            if(context.HttpContext.Request.Headers.TryGetValue("info",out headerToken))//获取token
            {
                token = headerToken.ToString();
            }

 

posted @ 2022-04-28 21:30  じ逐梦  阅读(937)  评论(0)    收藏  举报