我(示意性地)有以下情况:
MiddlewareGroup1{
MiddlewareGroup2{
Route::resource(...);
...
Route::post('some-ajax-request', 'SomeController@action');
}
OtherNestedMiddlewareGroups{
...
}
}
我遇到的问题是我希望MiddlewareGroup2申请ajax路由,但不是MiddlewareGroup1。如何使MiddlewareGroup1不适用,但保留MiddlewareGroup2?
答案 0 :(得分:2)
我想这里没有内置的解决方案。您可以将此路线放在MiddlewareGroup1
之外,也可以在MiddlewareGroup1
中查看当前请求网址,例如:
....
if ($request->is('some-ajax-request')) {
return $next($request);
}
....
这将跳过已定义URL的MiddlewareGroup1
中间件。
如果你有许多类似的ajax路线,你可以使用类似的URL('ajax-add-stuff','ajax-do-some-stuff'等)并像这样检查它们:
if ($request->is('ajax*')) { .... }