Limit
class Limit (View source)
Properties
mixed | $key | The rate limit signature key. |
|
int | $maxAttempts | The maximum number of attempts allowed within the given number of seconds. |
|
int | $decaySeconds | The number of seconds until the rate limit is reset. |
|
callable | $responseCallback | The response generator callback. |
Methods
Create a new limit instance.
Create a new rate limit using minutes as decay time.
Create a new rate limit using hours as decay time.
Create a new rate limit using days as decay time.
Set the key of the rate limit.
Set the callback that should generate the response when the limit is exceeded.
Get a potential fallback key for the limit.
Details
void
__construct(mixed $key = '', int $maxAttempts = 60, int $decaySeconds = 60)
Create a new limit instance.
static Limit
perSecond(int $maxAttempts, int $decaySeconds = 1)
Create a new rate limit.
static Limit
perMinute(int $maxAttempts, int $decayMinutes = 1)
Create a new rate limit.
static Limit
perMinutes(int $decayMinutes, int $maxAttempts)
Create a new rate limit using minutes as decay time.
static Limit
perHour(int $maxAttempts, int $decayHours = 1)
Create a new rate limit using hours as decay time.
static Limit
perDay(int $maxAttempts, int $decayDays = 1)
Create a new rate limit using days as decay time.
static Limit
none()
Create a new unlimited rate limit.
$this
by(mixed $key)
Set the key of the rate limit.
$this
response(callable $callback)
Set the callback that should generate the response when the limit is exceeded.
string
fallbackKey()
Get a potential fallback key for the limit.