Laravel 5 - 通过IP地址进行RateLimit

问题描述 投票:0回答:3

我现在正在使用Laravel 5构建REST API。

现在,我将限制同一IP地址在给定时间段内的请求数。

我想在中间件中实现它。

当然,有许多样本,但它们是Laravel 4的样本。它们不适用于Laravel 5。

请帮我。

谢谢。

laravel-5 middleware
3个回答
1
投票

在Laravel 5.2中,它是作为中间件构建的。 https://laracasts.com/series/whats-new-in-laravel-5-2


0
投票

已有一个包。看看https://github.com/GrahamCampbell/Laravel-Throttle。它是Laravel 5的速率限制器,通过中间件实现。


0
投票

您可以将中间件组(如api)分配给单个路径:

Route::get('/route/path', ['middleware' => 'api', 'uses' => 'Controller@action']);

或者,如果您只想使用限制中间件,您可以使用:

Route::get('/route/path', ['middleware' => 'throttle:2', 'uses' => 'Controller@action']);

有关速率限制功能的更多详细信息,您可以查看下面链接的Laracasts视频:

What's New in Laravel 5.2: API Rate Limiting

© www.soinside.com 2019 - 2024. All rights reserved.