专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

WebApi接口访问频率控制的实现

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/14 1:05:35       共计:3593 浏览

1、使用Nuget,对WebAPI项目添加WebApiThrottle的引用


2、进行注册,一般是在WebApiConfig的Register方法里添加,代码如下:


   using System;

   using System.Collections.Generic;

   using System.Linq;

   using System.Web.Http;

   using WebApiThrottle;

   namespace nnn

   {

   public static class WebApiConfig

   {

   public static void Register(HttpConfiguration config)

   {

   // Web API 配置和服务

   // Web API 路由

   config.MapHttpAttributeRoutes();

   config.Routes.MapHttpRoute(

   name: "DefaultApi",

   routeTemplate: "api/{controller}/{id}",

   defaults: new { id = RouteParameter.Optional }

   );

   //1、使用Nuget,对WebAPI项目添加WebApiThrottle的引用

   //2、进行注册,一般是在WebApiConfig的Register方法里添加,代码如下:

   config.Filters.Add(new ThrottlingFilter()

   {

   Policy = new ThrottlePolicy()

   {

   //ip配置区域

   IpThrottling = true,

   ClientThrottling = true,

   //端点限制策略配置会从EnableThrottling特性中获取。

   EndpointThrottling = true

   }

   });

   }

   }

   }


3、对需要控制的接口或者控制器加上头标示


 [EnableThrottling(PerMinute = 12)]//控制访问频率,每分钟最多12次


不需要控制访问频率的可以不加或者加上


[DisableThrotting]


这样就实现了使用过滤器控制特定API的访问频率,更多的使用方法可以参考下面的地址。

参考资料:

https://blog.csdn.net/weixin_30817749/article/details/98903913

WebApiThrottle限流框架使用手册  http://www.cnblogs.com/mushroom/p/4659200.html

控制ASP.NET Web API 调用频率与限流 http://www.cnblogs.com/Irving/p/4664786.html

控制ASP.NET Web API 调用频率 http://www.cnblogs.com/shanyou/p/3194802.html

转载于:https://www.cnblogs.com/SzeCheng/p/5407316.html





版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:Nginx负载均衡四种分配策略 | ·下一条:.NET6 WebApi 大文件上传——分片上传

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有