author:咔咔php
WeChat:fangkangfkweb
打開咱們的文件app\Http\Kernel.phpapp
在上圖咱們能夠看到四組中間件的定義,那麼下來就解釋一下,這四組中間件的使用code
分別是全局中間件、中間件組、指定路由中間件和中間件排序中間件
全局中間件
在全局中間件裏邊定義的中間件是會在全部的請求中執行的,在通常項目中的中間件是不會放置在這裏邊的排序
分配中間件到指定路由
路由中間件的使用就是,給自定義的中間件也添加到後邊,而後寫一個別名路由
使用方式:Route::get()->middleware('路由中間件的別名');便可get
中間件組
中間件組使用和分配單箇中間件一樣的語法被分配給路由和控制器動做。再次申明,中間件組的目的只是讓一次分配給路由多箇中間件的實現更加方便:it
使用方式:Route::get()->middleware('web');便可io
中間件排序
在某些特殊場景下,你可能須要中間件按照特定順序執行,可是一旦中間件已經分配到指定路由就無法控制它們的執行順序了。在這種狀況下,你能夠在 app/Http/Kernel.php
文件中經過 $middlewarePriority
屬性來指定中間件的優先級:
也就是說誰在前面就執行誰