LogicException 无法为序列化准备路由 [api/user]。使用闭包

LogicException Unable to prepare route [api/user] for serialization. Uses Closure

我在执行 PHP artisan 优化时遇到此错误。

错误:

API 路线:

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});

这是我在我的 homeController 中删除后开始的:

public function __construct()
{
    $this->middleware('auth');
}

我不希望家庭控制器仅供登录用户使用;我希望每个人都能看到!

感谢您的帮助!

php artisan optimizephp artisan route:cache。如果他们使用 Closure,你不能缓存你的路由。

这是其中之一。

Route::middleware('auth:api')->get('/user', function (Request $request) {
       return $request->user();
});

你能做的就是。将其更改为指向 controller class.

Route::middleware('auth:api')->get('/user', 'UserController@show');

并创建另一个控制器 UserController。你可以有这样的方法。

public function show(Request $request)
{
    return $request->user();
}

这应该适合你。