ルートの制限
レート制限
Laravelには、ルートにレート制限をかける便利なミドルウェアが用意されています。
今回は、ゲストと認証ユーザー別のレート制限をかけて、ログインしていないとRecommendContorollerのページに遷移できないようにしてみました。
recommend/app/Http/Controllers/RecommendController.php
Auth::routes();
Route::middleware('auth:api', 'throttle:60,1')->group(function () {
Route::resource('recommends', 'RecommendController');
Route::get('/', 'RecommendController@index');
});
誤って Auth::routes(); を制限下に置かないようにしましょう。
以下のようにしてしまうと、ログインページにも遷移できなくなってしまいます。
recommend/app/Http/Controllers/RecommendController.php
//このように書いてはいけません
Route::middleware('auth:api', 'throttle:60,1')->group(function () {
Auth::routes();//遷移できません
Route::resource('recommends', 'RecommendController');
Route::get('/', 'RecommendController@index');
});