[英]Laravel Passport Auth::user return all users instead of authenticated user
I have already set up Laravel passport for user authentication.我已经为用户身份验证设置了 Laravel 护照。
I was trying to use a GET API to retrieve the user info.我试图使用 GET API 来检索用户信息。 After the token is authenticated, all users info are returned.
令牌通过身份验证后,将返回所有用户信息。 What I expect is only authenticated user info is returned
我期望只返回经过身份验证的用户信息
The problem is $user = Auth::user(), Auth::user returned all user info.问题是 $user = Auth::user(), Auth::user 返回了所有用户信息。
Besides, I am using Nginx, not sure if it will cause the problem.此外,我正在使用 Nginx,不确定它是否会导致问题。
Thanks for anyone who can help!感谢任何可以提供帮助的人!
UserController.php用户控制器.php
public function showAll() {
$user = Auth::user();
return response()->json(['data' => $user], 200, [], JSON_NUMERIC_CHECK);
}
routes/api.php路线/api.php
Route::post('social_auth', 'Api\Auth\SocialAuthController@socialAuth');
Route::middleware('auth:api')->group(function () {
Route::get('user_info', 'Api\UserController@showAll');
});
Try this尝试这个
Auth::guard('api')->user()->id;
public function showAll() {
$user = Auth::guard('api')->user()->id;
return response()->json(['data' => $user], 200, [], JSON_NUMERIC_CHECK);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.