Registering Middleware: Global Middleware

Global Middleware

If you want a middleware to run during every HTTP request to your application, list the middleware class in the $middleware property of your app/Http/Kernel.php class.

Assigning Middleware To Routes

// Within App\Http\Kernel Class...

protected $routeMiddleware = [
    'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
    'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
    'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
    'can' => \Illuminate\Auth\Middleware\Authorize::class,
    'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
    'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
];
Route::get('admin/profile', function () {
    //
})->middleware('auth');
Route::get('/', function () {
    //
})->middleware('first', 'second');
Use App\Http\Middleware\CheckAge;

Route::get('admin/profile', function () {
    //
})->middleware(CheckAge::class);
  • You may also assign multiple middleware to the route.
  • When assigning middleware, you may also pass the fully qualified class name:.
  • If you would like to assign middleware to specific routes, you should first assign the middleware a key in your app/Http/Kernel.php file.

Registering Middleware: Global Middleware — Structure map

Clickable & Draggable!

Registering Middleware: Global Middleware — Related pages: