在我的api路线中,我有以下内容:
Route::group(['middleware' => 'throttle:rate_limit,1', 'prefix' => 'recruiter/v1', 'namespace' => 'Api\Recruiter\V1'], function ()
{
Route::get('/products', 'ProductController@index');
});
rate_limit
参数是我的users表中的一个字段,设置为100但是在每分钟60次点击之后,我似乎达到了极限。
在kernel.php我有:
'api' => [
'throttle:60,1',
'bindings',
],
现在,在使用动态速率限制时,文档没有提及需要对上述内容进行评论的内容吗?
我认为动态速率限制的整个想法是能够设置你自己的限制,但显然不是 - kernal.php中定义的任何内容都覆盖任何其他值,除非它低于kernal.php中定义的值。
在app/Http/Kernel.php
设置throttle
的MAX为rate_limit
。
你扼杀了两次。一旦进入你创建的组,一旦进入api。
如果您查看主RouteServiceProvider,您将看到api文件被您在内核中设置的api milddleware所包围。
它会限制api.php文件中的所有路由。
为避免这种情况,请从内核中的api中删除限制,将您的路由移出api.php并创建另一个路由文件,或者您可以更改服务提供程序以反映您需要的更改。