.NET6自定义WebAPI过滤器
更新时间:2021年12月24日 08:47:11 作者:PrintY
这篇文章介绍了.NET6自定义WebAPI过滤器的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
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过滤器的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
密码绑定至密码文本框中(TextMode设为Password)
一般情况之下TextBox的TextMode设为Password话,我们想在后台(.cs)绑定一个值至此文本框,是无法实现的,如果一定要绑定值的话,该如何实现呢?,本文将告诉你实现方法,感兴趣的朋友可以参考下2013-01-01
ASP.NET MVC中为DropDownListFor设置选中项的方法
这篇文章主要介绍了ASP.NET MVC中为DropDownListFor设置选中项的方法,需要的朋友可以参考下2014-10-10
MVC、MVP和MVVM分别是什么_动力节点Java学院整理
MVC,MVP 和 MVVM分别是什么?MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用。它本身很容易理解,但是要讲清楚,它与衍生的 MVP 和 MVVM 架构的区别就不容易了。2017-08-08
GridView_RowUpdating取不到新值的解决方法
GridView_RowUpdating取不到新值的解决方法,需要的朋友可以参考一下2013-05-05


最新评论