可以尝试以下几种方法解决:
确保已经经过身份验证并登录了应用程序。通常,Auth::user()会在用户登录后返回用户对象。如果用户没有登录,它将返回null。因此,您应该确保该用户已经登录应用程序。
您可以在在Auth::attempt()方法中手动设置用户的身份验证。如果身份验证失败,Auth::attempt()会返回false。您可以在此之后手动设置用户身份验证,例如:
if (Auth::attempt(['email' => $email, 'password' => $password])) { $user = User::where('email', $email)->first(); Auth::login($user); }
Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); });
运行上述代码将返回当前通过Passport进行验证的用户对象。如果用户没有通过Passport进行身份验证,则返回null。