当前位置: 首页 > news >正文

CORE MVC 过滤器 (筛选器)

MVC FrameWork

MVCFramework

MVC Core 过滤器 分 同步、异步

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

1、 授权筛选器 IAuthorizationFilter,IAsyncAuthorizationFilter
管道中运行的第一类筛选器,用来确定发出请求的用户是否有权限发出当前请求

2、资源筛选器 IResourceFilter , IAsyncResourceFilter
当授权之后,在管道的其余部分之前以及管道组件之后运行。 对于缓存很有用

3、 操作筛选器
在控制器方法操作之前和之后运行

4、异常筛选器 IExceptionFilter、IAsyncExceptionFilter
如果注册,则在发生未处理异常时触发

5、结果筛选器 IResultFilter IAsyncResultFilter
在操作方法结果执行之前和之后运行

过滤器Filter,有两种注册方式 ①全局注册,②区域注册【 Attribute注册,只套用在特定的 Action】。

在这里插入图片描述

》》》全面注册 net core6 之前

public class Startup
{public void ConfigureServices(IServiceCollection services){services.AddMvc(config =>{config.Filters.Add(new ResultFilter());config.Filters.Add(new ExceptionFilter());config.Filters.Add(new ResourceFilter());});}
}

添加链接描述
》》》全面注册 net core6 之后

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
筛选器顺序

区域注册

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

ASP.NET Core 在 Attribute 注册 Filter 的方式跟 ASP.NET MVC 有一点不一样,要透过[TypeFilter(type)]。
在 Controller 或 Action 上面加上 [TypeFilter(type)] 就可以区域注册 Filter。如下:
TypeFilter》》不需要在Service中注册。
在这里插入图片描述

筛选器的默认顺序

在这里插入图片描述
在这里插入图片描述

取消和设置短路

通过设置提供给筛选器方法的 context 参数上的 Result 属性,可以在筛选器管道的任意位置设置短路。 例如,以下资源筛选器将阻止执行管道的其余阶段。
在这里插入图片描述

依赖关系注入

在这里插入图片描述


http://www.mrgr.cn/news/39112.html

相关文章:

  • 剧本杀门店预约系统:掌握市场发展趋势!
  • 了解输出电源优先级
  • 四款视频剪辑工具使用感受与推荐:
  • CTF ciscn_2019_web_northern_china_day1_web2
  • HTML5实现好看的唐朝服饰网站模板源码2
  • 56.合并区间
  • 电源的带载能力怎么判断?Namisoft为您介绍测试方法
  • 云+AI时代下,Alibaba Cloud Linux 如何进一步演进?
  • 高性能网络SIG月度动态:推动 SMC 用户态工具支持细粒度透明替换和共享内存占用监控
  • 汽车信息安全 -- 再谈车规MCU的安全启动
  • 有效的括号
  • 局部代理有什么好处?为什么不使用全局代理?
  • Hello-Java-Sec靶场搭建
  • 3种方法解决Docker容器中配置运行环境问题
  • STM32重启源深度解析
  • 【Preference Learning】Reasoning with Language Model is Planning with World Model
  • golang web笔记-2.请求request
  • 一分钟上手 ComfyUI:AI 图像生成从此如此简单!
  • Yolov8分类检测记录
  • GIS在构建虚拟世界中的新机遇