首页 > 所有文章 > 行业 >文章详情

asp获取ip被包安全(抓包软件)

时间:2023-10-28 21:40:45 浏览量:30

近期项目中,提供了一些调用频率较高的api接口,需要保障服务器的稳定运行;需要对提供的接口进行限流控制。避免因客户端频繁的请求导致服务器的压力。

AspNetCoreRateLimit 是一个ASP.NET Core速率限制的解决方案,旨在控制客户端根据IP地址或客户端ID向Web API或MVC应用发出的请求的速率。AspNetCoreRateLimit包含一个 IpRateLimitMiddleware ClientRateLimitMiddleware ,每个中间件可以根据不同的场景配置限制允许IP或客户端,自定义这些限制策略,也可以将限制策略应用在每?个API URL或具体的HTTP Method上。

由上面介绍可知AspNetCoreRateLimit支持了两种方式:基于 客户端IP(IpRateLimitMiddleware)和客户端ID(ClientRateLimitMiddleware)速率限制 接下来就分别说明使用方式

添加Nuget包引用:

1、修改Startup.cs中方法:

2、在appsettings.json中添加通用配置项节点:(IpRateLimiting节点与Startup中取的节点对应)

配置节点已添加相应注释信息。

规则设置格式:

端点格式: {HTTP_Verb}:{PATH},您可以使用asterix符号来定位任何HTTP谓词。

期间格式: {INT}{PERIOD_TYPE},您可以使用以下期间类型之一:s, m, h, d。

限制格式: {LONG}

3、特点Ip限制规则设置,在appsettings.json中添加 IP规则配置节点

1、修改Startup文件:

2、通用配置采用IP限制相同配置,添加客户端限制配置:

3、调用结果:

设置规则:1s只能调用一次:首次调用



调用第二次:自定义返回内容


添加IpRateLimitController控制器:

调用时返回结果: