我目前正在开发一个由Laravel驱动的网站,其中包括两个独立的服务器,一个API服务器和一个公共Web服务器(两者都运行着Laravel)。
API服务器有许多路由,用于验证特定关键术语的可用性,例如电子邮件地址和URL slug。这些路由通过AJAX调用来检查数据库,并在按键时触发。
由于AJAX请求被触发多次甚至每分钟,API会抛出“Too many requests”错误。我知道可以通过增加请求限制来解决这个问题,但我只想对其中两个路由进行设置,而不是所有路由。
我该如何禁用单个API路由上的速率限制呢?
这里是其中一个标准路由:
Route::post('/email/is-available', function(Request $request) {
...
})->middleware('my_own_api_key_checking_middleware');
非常感谢您提前的帮助!
app/Http/Kernel.php
中将throttle
行注释掉。顺便说一下,该包已默认集成在最新版本的laravel框架中。让我详细说明一下答案。 - namelivia