Tag: 速率限制

如果API速率限制超过使用WebApiThrottle – C#Web API,则阻止API请求5分钟

在Web API中有一个非常好的库WebApiThrottle用于API速率限制。 如Wiki页面上所述,我可以根据API调用的授权令牌头来限制API。 但是,如果此api速率限制超过,我怎样才能阻止接下来5分钟的api呼叫? 此外,并非在接下来的5分钟内任何请求都会重置超出限速的时间。 我检查了代码,但找不到此function。 如果有人可以提出建议吗?

如何在ASP.NET MVC站点中实现速率限制?

我正在构建一个ASP.NET MVC站点,我想限制经过身份validation的用户使用该站点的某些function的频率。 虽然我理解速率限制如何从根本上解决,但我无法想象如何以编程方式实现它而不会产生主要的代码气味。 你能用C#示例代码指出一个简单而强大的解决方案来解决这个问题吗? 如果重要,所有这些函数当前都表示为仅接受HTTP POST Actions。 我最终可能希望为HTTP GET函数实现速率限制,所以我正在寻找适用于所有这些情况的解决方案。

为Web请求实施速率限制算法的最佳方法是什么?

可能/部分重复: 什么是一个好的速率限制算法? 限制方法在N秒内调用M个请求 在ASP.NET MVC中实现请求限制的最佳方法? 我正在寻找为Web应用程序实现移动时间窗口速率限制算法的最佳方法,以减少垃圾邮件或暴力攻击。 使用的示例是“最近5分钟内来自给定IP的最大失败登录尝试次数”,“最近N分钟内的最大((post/投票/等等)…”)。 我宁愿使用移动时间窗口算法,而不是每X分钟重新统计一次(比如twitter api)。 这将是一个C#/ ASP.Net应用程序。