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)
Получить количество секунд до заданной даты и времени.
protected целое число availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить метку времени "доступно в" в формате Unix.
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразуйте его в экземпляр DateTime.
protected int currentTime()
Получить текущее системное время в виде метки времени Unix.
void __construct(Factory $redis)
Создать новый ограничитель запросов.
Ответ handle(Запрос $request, Closure $next, int|string $maxAttempts = 60, float|int $decayMinutes = 1)
Обработка входящего запроса.
protected int resolveMaxAttempts(Запрос $request, int|string $maxAttempts)
Определение количества попыток, если пользователь аутентифицирован или нет.
protected string resolveRequestSignature(Запрос $request)
Определение подписи запроса.
protected ThrottleRequestsException buildException(string $key, int $maxAttempts)
Создать исключение «слишком много попыток».
protected int getTimeUntilNextRetry(string $key)
Получить количество секунд до снятия блокировки.
protected Response addHeaders(Response $response, int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)
Добавить информацию заголовков ограничения к заданному ответу.
protected array getHeaders(int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)
Получить информацию заголовков ограничения.
protected int calculateRemainingAttempts(string $key, int $maxAttempts, int|null $retryAfter = null)
Вычислить количество оставшихся попыток.
protected mixed tooManyAttempts(string $key, int $maxAttempts, int $decayMinutes)
Определить, было ли данному ключу "доступно" слишком много раз.
© 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