路由中间件

app/Http/Kernel.php 中注册为 routeMiddleware 的任何中间件都可以分配给路由。

分配中间件有几种不同的方法,但它们都是一样的。

Route::get('/admin', 'AdminController@index')->middleware('auth', 'admin');
Route::get('admin/profile', ['using' => 'AdminController@index', 'middleware' => 'auth']);
Route::get('admin/profile', ['using' => 'AdminController@index', 'middleware' => ['auth', 'admin']);

在上面的所有示例中,你还可以将完全限定的类名称作为中间件传递,无论它是否已注册为路由中间件。

use App\Http\Middleware\CheckAdmin;
Route::get('/admin', 'AdminController@index')->middleware(CheckAdmin::class);