昨天在开发过程中,需要使用到中间件的技术,之前都只是简单的认为要增加中间件就往middleware里添加中间件即可。本着周末的时间,就仔细研究了下 $middleware $middlewareGroup $routeMiddleware三个属性,到底是怎么样用的,通过查阅文档和网上资料,可算是搞明白了这三个属性是怎么用的和该怎么用。
$middleware属性:
这个属性称为全局中间件,为什么说是全局中间件呢?因为你的每一次请求,这里面的每个中间件都会执行。
$routeMiddleware属性:
这个属性称为路由中间件,为什么说是路由中间件呢?因为定义在该属性内的中间件,只能在定义路由时候引用。
假设这是我们定义的路由中间件:
protected $routeMiddleware = [
...
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
];