zoukankan      html  css  js  c++  java
  • 过滤器 FilterAttribute 的使用

          在开发项目过程中,我们访问某些接口的时候,经常需要做权限验证等。而在每个控制器中写权限验证就显得重复冗余,所以我们使用过滤器FilterAttribute来处理一些接口权限、参数验证的问题。

    只需要写好一个过滤器类,然后在需要的控制器或者接口前面加上就可以很方便是起到验证的作用。

    一、写一个过滤器类,类名要以FilterAttribute结尾,并且继承 ActionFilterAttribute

     public class UserFilterAttribute : ActionFilterAttribute
     {
            public override void OnActionExecuting(ActionExecutingContext filterContext)
            {
                //业务逻辑
            }
     }

    二、在类中重写 OnActionExecuting 方法并在其中写好业务逻辑就可以了

    三、使用过滤器

           在需要过滤的类或者方法前面加特性标志就可以了

     

     四、如果要全局使用,可以在Startup启动类中添加服务

    有两种方法:

    方法一

     public void ConfigureServices(IServiceCollection services)
     {
         services.AddControllers(s=>s.Filters.Add(typeof(UserFilterAttribute)));
     }

     方法二

    public void ConfigureServices(IServiceCollection services)
     {
         services.AddControllers(s=>s.Filters.Add(new UserFilterAttribute()));
     }
  • 相关阅读:
    ES6:Iterator遍历器
    前端:对BFC的理解
    前端:性能优化之防抖与节流
    ES6新增数据类型Symbol
    ajax和fetch、aixos的区别
    我对js数据类型的理解和深浅(copy)的应用场景
    egg的基本使用
    前端:css3的过渡与动画的基础知识
    Java基础篇之类
    JAVA基础篇之Scanner
  • 原文地址:https://www.cnblogs.com/qingheshiguang/p/14272410.html
Copyright © 2011-2022 走看看