我这样写中间件- -结果都没生效。我把中间件改为全局或者是应用之后都能生效运行
注意: ->middleware() 路由中间件作用于 group 分组之后时候,当前路由必须在处于当前分组之下
Route::group('/blog', function () { Route::group('/v1', function () { Route::any('/create', function ($rquest) {return response('create');}); Route::any('/edit', function ($rquest) {return response('edit');}); Route::any('/view/{id}', function ($rquest, $id) {return response("view $id");}); }); })->middleware([ app\middleware\MiddlewareA::class, app\middleware\MiddlewareB::class, ]);
Route::group('/blog', function () { Route::group('/v1', function () { Route::any('/create', function ($rquest) {return response('create');}); Route::any('/edit', function ($rquest) {return response('edit');}); Route::any('/view/{id}', function ($rquest, $id) {return response("view $id");}); })->middleware([ app\middleware\MiddlewareA::class, app\middleware\MiddlewareB::class, ]); });
文档说的
没错啊- -我就是在第一个分组外面
你group有没有嵌套嘛?
每嵌套 里面就是一个个单独的路由
那可能是其他中间件拦截了请求,没走到你设置的中间件。
就这个了别的中间件我都删除了
解决了 默认路由会跳过中间件,我关闭了默认路由 然后重新路由就可以了
注意:
->middleware() 路由中间件作用于 group 分组之后时候,当前路由必须在处于当前分组之下
错误使用例子
正确使用例子
文档说的
没错啊- -我就是在第一个分组外面
你group有没有嵌套嘛?
每嵌套 里面就是一个个单独的路由
那可能是其他中间件拦截了请求,没走到你设置的中间件。
就这个了别的中间件我都删除了
解决了 默认路由会跳过中间件,我关闭了默认路由 然后重新路由就可以了