如果你想将一个中间件应用在所有的路由中,可以使用 Laravel 7 中的全局中间件。以下是如何实现的步骤:
- 打开
app/Http/Kernel.php
文件,在$middleware
属性数组中添加你的中间件:
protected $middleware = [
// ...
\App\Http\Middleware\YourMiddleware::class,
];
- 如果你希望这个全局中间件只作用于 HTTP 请求,可以将其添加到
$middlewareGroups
属性数组的'web'
数组里:
protected $middlewareGroups = [
'web' => [
// ...
\App\Http\Middleware\YourMiddleware::class,
],
];
- 如果你希望这个全局中间件也作用于 API 请求,可以将其添加到
$middlewareGroups
属性数组的'api'
数组里:
protected $middlewareGroups = [
'api' => [
// ...
\App\Http\Middleware\YourMiddleware::class,
],
];
- 如果你希望这个全局中间件在所有请求前都执行,可以将其添加到
$middlewarePriority
属性数组里:
protected $middlewarePriority = [
// ...
\App\Http\Middleware\YourMiddleware::class,
];
通过以上步骤,你就可以在所有请求中使用自己定义的全局中间件了。请注意,如果某些路由需要排除这个全局中间件,则需要在路由定义时单独指定。