API 路由在 Laravel VueJS 应用程序中不起作用

API routes are not working in Laravel VueJS app

我正在使用 Laravel 和 Vue 构建 SPA。但是,我需要使用 axios 进行 API 调用,但它不起作用。

这是我的 web.php:

Route::get('/{any}', function () {
    return view('index');
})->where('any', '.*');

这是我的 api.php 路线:

Route::get('/notification', 'NotificationController@index');

每当我拨打 API 电话时,它都会显示空白页或损坏的页面。

你能给我关于这个问题的任何建议并解决吗?

您应该防止 api 路由被 web.php 路由捕获。

首先,前缀api路由:

api.php

Route::get('/api/notification', 'NotificationController@index');

然后,从网络路由中排除前缀路由:

web.php

Route::get('/{any}', function () {
    return view('index');
})->where('any', '^(?!api).*$');