Spec-Zone.ru › Laravel 5.8

ThrottleRequestsWithRedis

class ThrottleRequestsWithRedis extends ThrottleRequests (View source)

Свойства

InteractsWithTime

Свойства

protected RateLimiter $limiter Экземпляр лимитера скорости. из ThrottleRequests
protected Factory $redis Реализация фабрики Redis.
int $decaysAt Отметка времени окончания текущей продолжительности.
int $remaining Количество оставшихся слотов.

Методы

int secondsUntil(DateTimeInterface|DateInterval|int $delay)

Получить количество секунд до указанной даты DateTime.

из InteractsWithTime
int availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Получить временную метку UNIX для «доступно в».

из InteractsWithTime
DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

Если заданное значение является интервалом, преобразовать его в объект DateTime.

из InteractsWithTime
int currentTime()

Получить текущее системное время как временную метку UNIX.

из InteractsWithTime
void __construct(Factory $redis)

Создать новый ограничивающий запрос.

Ответ handle(Запрос $request, Closure $next, int|string $maxAttempts = 60, float|int $decayMinutes = 1)

Обработать входящий запрос.

int resolveMaxAttempts(Запрос $request, int|string $maxAttempts)

Определить количество попыток, если пользователь аутентифицирован или нет.

из ThrottleRequests
string resolveRequestSignature(Запрос $request)

Определить подпись запроса.

из ThrottleRequests
ThrottleRequestsException buildException(string $key, int $maxAttempts)

Создать исключение «слишком много попыток».

из ThrottleRequests
int getTimeUntilNextRetry(string $key)

Получить количество секунд до снятия блокировки.

Ответ addHeaders(Response $response, int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)

Добавить информацию о лимите в предоставленный ответ.

из ThrottleRequests
массив getHeaders(int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)

Получить информацию о заголовках лимитов.

из ThrottleRequests
целое число calculateRemainingAttempts(string $key, int $maxAttempts, int|null $retryAfter = null)

Вычислить количество оставшихся попыток.

смешанный тип tooManyAttempts(string $key, int $maxAttempts, int $decayMinutes)

Определить, было ли заданному ключу "доступно" слишком много раз.

Подробности

protected целое число secondsUntil(DateTimeInterface|DateInterval|int $delay)

Получить количество секунд до заданной даты и времени.

Параметры

DateTimeInterface|DateInterval|int $delay

Возвращаемое значение

целое число

protected целое число availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Получить метку времени "доступно в" в формате Unix.

Параметры

DateTimeInterface|DateInterval|int $delay

Возвращаемое значение

целое число

protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

Если заданное значение является интервалом, преобразуйте его в экземпляр DateTime.

Параметры

DateTimeInterface|DateInterval|int $delay

Возвращаемое значение

DateTimeInterface|int

protected int currentTime()

Получить текущее системное время в виде метки времени Unix.

Возвращаемое значение

int

void __construct(Factory $redis)

Создать новый ограничитель запросов.

Параметры

Factory $redis

Возвращаемое значение

void

Ответ handle(Запрос $request, Closure $next, int|string $maxAttempts = 60, float|int $decayMinutes = 1)

Обработка входящего запроса.

Параметры

Запрос $request
Closure $next
int|string $maxAttempts
float|int $decayMinutes

Возвращаемое значение

Ответ

Исключения

HttpException

protected int resolveMaxAttempts(Запрос $request, int|string $maxAttempts)

Определение количества попыток, если пользователь аутентифицирован или нет.

Параметры

Запрос $request
int|string $maxAttempts

Возвращаемое значение

int

protected string resolveRequestSignature(Запрос $request)

Определение подписи запроса.

Параметры

Запрос $request

Возвращаемое значение

string

Исключения

RuntimeException

protected ThrottleRequestsException buildException(string $key, int $maxAttempts)

Создать исключение «слишком много попыток».

Параметры

string $key
int $maxAttempts

Возвращаемое значение

ThrottleRequestsException

protected int getTimeUntilNextRetry(string $key)

Получить количество секунд до снятия блокировки.

Параметры

string $key

Возвращаемое значение

int

protected Response addHeaders(Response $response, int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)

Добавить информацию заголовков ограничения к заданному ответу.

Параметры

Response $response
int $maxAttempts
int $remainingAttempts
int|null $retryAfter

Возвращаемое значение

Response

protected array getHeaders(int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)

Получить информацию заголовков ограничения.

Параметры

int $maxAttempts
int $remainingAttempts
int|null $retryAfter

Возвращаемое значение

array

protected int calculateRemainingAttempts(string $key, int $maxAttempts, int|null $retryAfter = null)

Вычислить количество оставшихся попыток.

Параметры

string $key
int $maxAttempts
int|null $retryAfter

Значение возврата

int

protected mixed tooManyAttempts(string $key, int $maxAttempts, int $decayMinutes)

Определить, было ли данному ключу "доступно" слишком много раз.

Параметры

string $key
int $maxAttempts
int $decayMinutes

Значение возврата

mixed

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.8/Illuminate/Routing/Middleware/ThrottleRequestsWithRedis.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API