在 Laravel 中使用未经身份验证的 api 路由

Using api route without authentication in Laravel

我只想 return 来自控制器的一些 JSON 数据,因此我想使用 api 路由。

MyController.php:

public function data()
{
    //return json string
}

根据我的需要,api 和网络路由都应该使用该控制器。

api.php:

Route::get('data', 'MyController@data');

当我访问路径:/api/data 时,它会将我重定向到 /home

但是,当我将路线更改为以下路线时,它会起作用:

Route::get('data', function() {
    //return json string
});

不知道是不是跟认证有关。如您所见,我没有将任何中间件绑定到我的路由。

这里似乎有什么问题?

如果您的控制器中定义了中间件,请执行此操作

$this->middleware('auth', ['except' => ['yourMethodName']]);