#laravel #post #ratelimit
Вопрос:
Пожалуйста, проверьте следующий код для ограничения скорости
RateLimiter::for('api', function (Request $request) {
return [
// Rate limiter based on Client IP Address
Limit::perMinute(env('IP_ADDR_RATE_LIMITER_PER_MINUTE', 60))->by($request->ip())->response(function () {
....
}),
// Rate limiter based on API key/User
Limit::perMinute(env('API_KEY_RATE_LIMITER_PER_MINUTE', 60))->by($request->input('key'))->response(function () {
...
})
];
});
Конфигурация маршрута в api.php
Route::post('/temporalrisk/v1', [TemporalRouteRiskV1::class, 'postMethod'])->middleware('key')->name('temporalrouteriskv1.index');
Может ли кто-нибудь помочь мне решить вышеуказанную проблему, чтобы установить ограничение скорости для маршрутов методом post?
Комментарии:
1. вы должны написать код [ ответ на возврат («Пользовательский ответ…», 429); ] в функциях
Ответ №1:
Это может вам помочь:
RateLimiter::for('global', function (Request $request) {
return Limit::perMinute(1000)->response(function () {
return response('Custom response...', 429);
});
});
Для получения дополнительной информации об ограничении скорости :