Маршрутизация Laravel API не выполняет регулирование - всегда по умолчанию 60,1 - PullRequest
0 голосов
/ 01 мая 2018

У меня есть группа конечных точек, которые я хочу получить в 10 запросов в минуту. В настоящее время моя группа конечных точек выглядит следующим образом:

Route::group([
    'middleware' => 'auth:api', 'throttle:10,1'
], function () {
// endpoints here
}

Проблема в том, что когда я просматриваю свои заголовки, ограничение скорости устанавливается на уровне стандартных 60 в минуту. Что я делаю неправильно? Или ты знаешь другой путь?

Данные ответа следующие:

cache-control: no-cache, private
content-encoding: gzip
content-type: application/json
date: Tue, 01 May 2018 20:08:55 GMT
server: nginx/1.14.0 (Ubuntu)
status: 200
vary: Accept-Encoding
x-ratelimit-limit: 60
x-ratelimit-remaining: 59

Я попробовал следующее:

Route::group([
    'middleware' => ['auth:api', 'throttle:10,1']
], function () {
// rest of code

Но получил тот же результат. Тогда я попытался:

Route::group([
    'middleware' => 'throttle:10,1', 'auth:api'
], function () {
// rest of code

Однако, это дало мне ошибку 500. Это сказало мне, что промежуточное программное обеспечение определенно должно быть массивом. Однако, когда это массив, он не устанавливает дроссель на то, что я хочу.

Ответы [ 2 ]

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

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

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

У меня нет возможности проверить это, но я подозреваю, что вы хотите:

Route::group([
    'middleware' => ['auth:api', 'throttle:10,1']
], function () {
// rest of code

( источник документов )

То есть, не помещая 'auth:api' и 'throttle:10,1' в один массив, Laravel не может понять, что последний также является промежуточным ПО.

...