Laravel:捕获路径不以 api 开头的所有路由

Иль*_*ько 7 api laravel vue.js

我在 web.php 中有这样一个路由器的地方使用这个启动器Laravel + Vue SPA

Route::get('/{any}', 'SpaController@index')->where('any', '.*');
Run Code Online (Sandbox Code Playgroud)

但是当我使用不存在的 url 请求 api 时,我想通过以下方式返回响应

Route::fallback(function() {
    return response()->json(['message' => 'Not Found!'], 404);
});
Run Code Online (Sandbox Code Playgroud)

这条路线不起作用,而是请求转到这条路线:

Route::get('/{any}', 'SpaController@index')->where('any', '.*');
Run Code Online (Sandbox Code Playgroud)

我知道我需要改变,->where('any', '.*');但不确定如何改变。

Иль*_*ько 13

而不是这个

Route::get('/{any}', 'SpaController@index')->where('any', '.*');
Run Code Online (Sandbox Code Playgroud)

我用

Route::get('/{any}', 'SpaController@index')->where('any', '^(?!api).*$');
Run Code Online (Sandbox Code Playgroud)

我得到了这个答案的帮助。