ThrottleRequests
class ThrottleRequests (View source)
Traits
| InteractsWithTime | 
Properties
| protected RateLimiter | $limiter | The rate limiter instance. | 
Methods
| int |  secondsUntil(DateTimeInterface|DateInterval|int $delay)  Get the number of seconds until the given DateTime.  |  from InteractsWithTime | 
| int |  availableAt(DateTimeInterface|DateInterval|int $delay)  Get the "available at" UNIX timestamp.  |  from InteractsWithTime | 
| DateTimeInterface|int |  parseDateInterval(DateTimeInterface|DateInterval|int $delay)  If the given value is an interval, convert it to a DateTime instance.  |  from InteractsWithTime | 
| int |  currentTime()  Get the current system time as a UNIX timestamp.  |  from InteractsWithTime | 
| void |  __construct(RateLimiter $limiter)  Create a new request throttler.  |  |
| mixed |  handle(Request $request, Closure $next, int|string $maxAttempts = 60, float|int $decayMinutes = 1)  Handle an incoming request.  |  |
| int |  resolveMaxAttempts(Request $request, int|string $maxAttempts)  Resolve the number of attempts if the user is authenticated or not.  |  |
| string |  resolveRequestSignature(Request $request)  Resolve request signature.  |  |
| HttpException |  buildException(string $key, int $maxAttempts)  Create a 'too many attempts' exception.  |  |
| int |  getTimeUntilNextRetry(string $key)  Get the number of seconds until the next retry.  |  |
| Response |  addHeaders(Response $response, int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)  Add the limit header information to the given response.  |  |
| array |  getHeaders(int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)  Get the limit headers information.  |  |
| int |  calculateRemainingAttempts(string $key, int $maxAttempts, int|null $retryAfter = null)  Calculate the number of remaining attempts.  |  
Details
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Get the number of seconds until the given DateTime.
protected int availableAt(DateTimeInterface|DateInterval|int $delay)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected int currentTime()
Get the current system time as a UNIX timestamp.
void __construct(RateLimiter $limiter)
Create a new request throttler.
mixed handle(Request $request, Closure $next, int|string $maxAttempts = 60, float|int $decayMinutes = 1)
Handle an incoming request.
protected int resolveMaxAttempts(Request $request, int|string $maxAttempts)
Resolve the number of attempts if the user is authenticated or not.
protected string resolveRequestSignature(Request $request)
Resolve request signature.
protected HttpException buildException(string $key, int $maxAttempts)
Create a 'too many attempts' exception.
protected int getTimeUntilNextRetry(string $key)
Get the number of seconds until the next retry.
protected Response addHeaders(Response $response, int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)
Add the limit header information to the given response.
protected array getHeaders(int $maxAttempts, int $remainingAttempts, int|null $retryAfter = null)
Get the limit headers information.
protected int calculateRemainingAttempts(string $key, int $maxAttempts, int|null $retryAfter = null)
Calculate the number of remaining attempts.
    © Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
    https://laravel.com/api/5.5/Illuminate/Routing/Middleware/ThrottleRequests.html