Laravel 5.5 api 使用 passport 的呼叫转到网络路由而不是 api

Laravel 5.5 api calls using passport going to web routes instead of api

我正在将 api 构建到现有的 laravel 应用程序中。我按照文档中的教程进行操作,并使用邮递员尝试调用端点,但一直被推入我的 web.php 路由。在那里我在底部有以下内容:

Route::get('{catchall}', ['as' => 'url', 'uses'=>'PagesController@getPage'])->where('catchall', '(.*)');

它捕获所有没有路由的页面并将它们发送到 404 页面。 api 调用到达该路由并返回 404。为什么他们不首先访问 api.php 文件?

你需要在 url 中添加 api 前缀来调用 api.php,就像你在 api.php 中有 home route 然后调用它一样:

Http://127.0.0.1:8000/api/login

首先,使用 POSTMAN 测试您的 API 端点。

请求 URL 应该类似于 http://127.0.0.1:3000/api/login记住路径中的/api/

在请求中使用 Accept:application/json header。