author:咔咔php
WeChat:fangkangfkweb
打开咱们的文件app\Http\Kernel.phpapp
在上图咱们能够看到四组中间件的定义,那么下来就解释一下,这四组中间件的使用code
分别是全局中间件、中间件组、指定路由中间件和中间件排序中间件
全局中间件
在全局中间件里边定义的中间件是会在全部的请求中执行的,在通常项目中的中间件是不会放置在这里边的排序
分配中间件到指定路由
路由中间件的使用就是,给自定义的中间件也添加到后边,而后写一个别名路由
使用方式:Route::get()->middleware('路由中间件的别名');便可get
中间件组
中间件组使用和分配单个中间件一样的语法被分配给路由和控制器动做。再次申明,中间件组的目的只是让一次分配给路由多个中间件的实现更加方便:it
使用方式:Route::get()->middleware('web');便可io
中间件排序
在某些特殊场景下,你可能须要中间件按照特定顺序执行,可是一旦中间件已经分配到指定路由就无法控制它们的执行顺序了。在这种状况下,你能够在 app/Http/Kernel.php
文件中经过 $middlewarePriority
属性来指定中间件的优先级:
也就是说谁在前面就执行谁