广告
返回顶部
首页 > 资讯 > 后端开发 > ASP.NET >.NET6自定义WebAPI过滤器
  • 460
分享到

.NET6自定义WebAPI过滤器

2024-04-02 19:04:59 460人浏览 泡泡鱼
摘要

1、上代码 /// <summary> /// api白名单过滤器 /// </summary> public class API

1、上代码


/// <summary>
    /// api白名单过滤器
    /// </summary>
    public class APIFilter : ActionFilterAttribute
    {
        /// <summary>
        /// 控制器中加了该属性的方法中代码执行之前该方法。
        /// 所以可以用做权限校验。
        /// </summary>
        /// <param name="context"></param>
        public override void OnActionExecuting(ActionExecutinGContext context)
        {
            var vistorIp = context.HttpContext.Connection.RemoteIpAddress.ToString_();
            var whiteIp = AppsettingHelper.Get("WhiteIP");
            if (!string.IsNullOrEmpty(whiteIp))
            {
                List<string> whiteIpList = whiteIp.Split(',').ToList();
                if (!whiteIpList.Contains("*") && !whiteIpList.Contains(vistorIp))
                {
                    context.HttpContext.Response.StatusCode = 401;
                    context.Result = new JSONResult(new { code = 401, msg = "非法IP" });
                }
            }
            base.OnActionExecuting(context);
        }
        /// <summary>
        /// 控制器中加了该属性的方法执行完成后才会来执行该方法。
        /// </summary>
        /// <param name="context"></param>
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            base.OnActionExecuted(context);
        }
        /// <summary>
        /// 控制器中加了该属性的方法执行完成后才会来执行该方法。比OnActionExecuted()方法还晚执行。
        /// </summary>
        /// <param name="context"></param>
        /// <param name="next"></param>
        /// <returns></returns>
        public override Task OnResultExecutionAsync(ResultExecutingContext context, ResultExecutionDelegate next)
        {
            return base.OnResultExecutionAsync(context, next);
        }
    }

2、使用


    [Route("api/[controller]/[action]")]
    [ApiController]
    [APIFilter]
    public class YangController : BaseController

到此这篇关于.net6自定义webapi过滤器的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: .NET6自定义WebAPI过滤器

本文链接: https://www.lsjlt.com/news/160719.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • .NET6自定义WebAPI过滤器
    1、上代码 /// <summary> /// API白名单过滤器 /// </summary> public class API...
    99+
    2022-11-12
  • vue如何自定义过滤器
    在vue中自定义过滤器的方法:1.新建vue.js项目;2.使用Vue.filter()方法自定义过滤器;具体步骤如下:首先,在vue-cli中创建一个vue.js项目;vue create project-namevue.js项目创建好后...
    99+
    2022-10-06
  • ASP.NETMVC自定义异常过滤器
    一、异常过滤器 异常筛选器用于实现IExceptionFilter接口,并在ASP.NET MVC管道执行期间引发了未处理的异常时执行。异常筛选器可用于执行诸如日志记录或显示错误页之...
    99+
    2022-11-13
  • ASP.NETMVC自定义授权过滤器
    目录一、授权过滤器二、示例1、添加对应实体类2、添加测试数据3、新建继承类4、添加Account控制器5、修改配置文件6、添加授权控制器三、测试测试Welcome四、总结一、授权过滤...
    99+
    2022-11-13
  • django怎么自定义过滤器
    在Django中,可以通过创建自定义过滤器来对模板中的变量进行特定的处理。可以按照以下步骤来自定义过滤器: 创建一个Python...
    99+
    2023-10-25
    django
  • springboot自定义过滤器的方法
    过滤器是Servlet的规范,是基于函数回调的,需要实现javax.servlet.Filter接口,依赖于Tomcat等容器,一般用于过滤请求的URL。 1自定义过滤器 自定义fi...
    99+
    2022-11-12
  • ASP.NET MVC自定义操作过滤器
    目录一、操作过滤器1、定义2、案例2.1、创建自定义操作过滤器2.2、新建控制器二、结果过滤器1、定义2、案例三、案例1、记录操作1.1、创建实体类1.2、创建日志类1.3、修改操作...
    99+
    2022-11-13
  • Django自定义模板标签和过滤器
    1.创建模板库 在某个APP所在目录下新建包templatetags,然后在其中创建存储标签或者过滤器的的模块,名称随意,例如myfilters.py。 在这个模块中编写相关代码。 注意:templatetags所在APP应该在配置文件中...
    99+
    2023-01-31
    自定义 过滤器 模板
  • Spring Cloud Zuul自定义过滤器的实现
    构建Zuul自定义过滤器,限制ip频繁请求 自定义zuul过滤器其实很简单 1. 首先pom文件得先引入zuul依赖 <dependency> <gr...
    99+
    2022-11-11
  • springSecurity之如何添加自定义过滤器
    目录springSecurity 添加自定义过滤器很简单,配置如下然后再来看看myFilterspringSecurity 自定义认证过滤器出现的问题解决方法springSecuri...
    99+
    2022-11-12
  • Vue过滤器怎么自定义及使用
    这篇文章主要介绍“Vue过滤器怎么自定义及使用”,在日常操作中,相信很多人在Vue过滤器怎么自定义及使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue过滤器怎么自定义及使用”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-04
  • springboot整合shiro与自定义过滤器的全过程
    目录filter自定义过滤器  增加了 对验证码的校验Shiro中的权限控制总结filter自定义过滤器  增加了 对验证码的校验 package com.you...
    99+
    2022-11-12
  • vue 过滤器和自定义指令的使用
    目录过滤器 01. 是什么 02. 怎么做 (1)定义过滤器 (2)使用方式 (3)过滤器的参数03. 封装过滤器函数 自定义指令 01. 是什么 02. 基本概念 (1)钩子函数 ...
    99+
    2022-11-12
  • django-5-自定义模板过滤器及标签
    <<<代码布局(自定义的代码放哪里)>>> (1)某个app特有的   1.一般放app目录下 固定名为templatetags 的python文件夹里鸭,如果是别的名称,django是找不到的哦! ...
    99+
    2023-01-30
    自定义 器及 模板
  • Django5中怎么自定义过滤器和标签
    这篇文章将为大家详细讲解有关Django5中怎么自定义过滤器和标签,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。  目录结构  1.(创建)在主目录下创建名为common的python包(自...
    99+
    2023-06-02
  • Spring Cloud Zuul如何实现自定义过滤器
    小编给大家分享一下Spring Cloud Zuul如何实现自定义过滤器,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!构建Zuul自定义过滤器,限制ip频繁请求自定义zuul过滤器其实很简单1. 首先pom文件得先引入zu...
    99+
    2023-06-14
  • ASP.NET MVC自定义异常过滤器使用案例
    目录一、需求二、案例1、创建工具类1.1、创建日志工具类1.2、创建网络工具类2、创建自定义异常类3、创建控制器4、测试在上一篇文章中讲解了自定义异常过滤器,这篇文章会结合工作中的真...
    99+
    2022-11-13
  • springboot集成shiro自定义登陆过滤器方法
    目录前言自定义UsernamePasswordAuthenticationFilter覆盖默认的FormAuthenticationFilter完整UsernamePasswordA...
    99+
    2022-11-13
    springboot集成shiro springboot自定义登陆过滤器
  • 关于自定义过滤器获取不到session问题
    目录自定义过滤器获取不到session问题原因解决办法登录拦截器取到的session为空写了一个拦截器判断有没有登录在另外页面能得到session的值自定义过滤器获取不到sessio...
    99+
    2022-11-12
  • vue如何定义私有过滤器
    小编给大家分享一下vue如何定义私有过滤器,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!私有过滤器和全局过滤器的方法和概念都相同,只是一个是全局都可以调用,而私有的只有自己可以调用,全局过滤器点这里全局过滤器使用方法也和全...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作