1
我正在使用下面的代码实现组中所有路由的速率限制功能。Laravel 5.2中的特定路由的速率限制功能
Route::group(['middleware' => ['web', 'throttle:2']], function() {
Route::get('/CSR', array('uses' => '[email protected]', 'as' => 'CSRList'));
//Second Route
//Third Route
//Fourth Route
//Fifth Route
//....
});
问题 这个伟大的工程。有没有什么办法可以在组中的任何特定路线上执行此操作?
费率限制功能是针对特定的IP地址,或者它对网站的所有访问者都有效。我的意思是,让我们说在stackoverflow.com网站的某些页面被限制访问每分钟10次。假设您访问了10次,现在当我尝试访问该网页时,我将不会被允许,因为每分钟尝试10次。那是对的吗 ?或者我会分别进行10次尝试? – Pankaj
限制功能使用多个请求参数(包括IP地址),实际上中间件使用['Request :: fingerprint'](https://github.com/laravel/framework/blob/5.2/src/ Illuminate/Http/Request.php#L841-L846)方法来生成用于调节的唯一密钥(您可以在那里看到它用来生成指纹的参数)。这[Laracasts Video](https://laracasts.com/series/whats-new-in-laravel-5-2/episodes/2)很好地解释了速率限制中间件的工作原理。 – Bogdan