Laravel 5.7 динамическое ограничение скорости не работает - PullRequest
0 голосов
/ 10 февраля 2019

В моих маршрутах API у меня есть следующее:

Route::group(['middleware' => 'throttle:rate_limit,1', 'prefix' => 'recruiter/v1', 'namespace' => 'Api\Recruiter\V1'], function ()
{

    Route::get('/products', 'ProductController@index');
 });

Параметр rate_limit является полем в моей таблице пользователей и имеет значение 100, но после 60 попаданий в минуту я, кажется, достигаю предела.

В kernal.php у меня есть:

'api' => [
        'throttle:60,1',
        'bindings',
],

Теперь в документах ничего не говорится о необходимости комментировать вышесказанное при использовании динамического ограничения скорости?

Я думал, что вся идея динамического ограничения скорости заключалась в том, чтобы установить собственный предел, но явно нет - все, что определено в kernal.php, переопределяет любое другое значение, если оно не ниже значения, определенного в kernal.php.

Ответы [ 2 ]

0 голосов
/ 01 мая 2019

Вы дважды душите.Один раз в созданной вами группе и один раз в API.

Если вы загляните в основной RouteServiceProvider, вы увидите, что файл API окружен программным обеспечением API, которое вы установили в Ядре.

Он ограничивает ВСЕ маршруты внутри файла api.php.

Чтобы избежать этого, удалите газ из API в Kernel, переместите ваши маршруты из api.php и создайте другой файл маршрутов, или вы можете изменитьпоставщик услуг, чтобы отразить ваши изменения вам нужно.

0 голосов
/ 10 февраля 2019

In app/Http/Kernel.php настройка MAX throttle для rate_limit.

...