我想在Laravel的某些路线上应用两个中间件。
Route::group(['middleware' => ('auth_guest'), 'prefix' => 'guest/'], function() {
// 60 routes
});
我知道两个解决方案:
1-在控制器的构造函数中应用中间件。
2-合并两个中间件并使其成为一个。
虽然两者都可行,但我希望将两个中间件分开。
有没有办法在组中应用两个中间件?
类似的东西:
Route::group(['middleware' => ('auth_guest'), 'prefix' => 'guest/'], function() {
Route::group(['middleware' => ('isgreat')], function() {
//60 routes
});
});
答案 0 :(得分:1)
是的,您可以应用这样的中间件列表:
Route::middleware(['auth',RegionLock::class,CampaignStarted::class, UserBanned::class])
->group(function () {
...
});
或小组:
Route::group(['middleware' => ['first','second']], function () {
//
});
DOCS:
您也可以为路线分配多个中间件:
Route::get('/', function () {
//
})->middleware('first', 'second');