Php 当前用户';Laravel API中的s ID
我有控制器方法存储,并为该方法定义了api路由。当我尝试从$request存储信息时,一切正常,但当前用户ID.Auth::user()返回null。如何获取该id?首先,您需要确保“api用户”已登录以获取id。您可以使用auth()->user()->id或auth::user()->id获取当前用户id。首先,您需要确保“api用户”已登录以获取id。您可以使用auth()->user()->id或Auth::user()->id以获取当前用户id。如果您是从定制的Auth(不是laravel提供的默认Auth)尝试此操作,则所有需要进行Auth的路由都应该使用Php 当前用户';Laravel API中的s ID,php,laravel,api,Php,Laravel,Api,我有控制器方法存储,并为该方法定义了api路由。当我尝试从$request存储信息时,一切正常,但当前用户ID.Auth::user()返回null。如何获取该id?首先,您需要确保“api用户”已登录以获取id。您可以使用auth()->user()->id或auth::user()->id获取当前用户id。首先,您需要确保“api用户”已登录以获取id。您可以使用auth()->user()->id或Auth::user()->id以获取当前用户id。如果您是从定制的Auth(不是larav
web
中间件
Route::group(['middleware' => 'web'], function () {
// your routes
});
然后,您可以使用以下任一方法获取活动用户id:
Auth::user()->id
或
如果您是从定制的身份验证(不是laravel提供的默认身份验证)尝试此操作,那么所有需要身份验证的路由都应该使用
web
中间件
Route::group(['middleware' => 'web'], function () {
// your routes
});
然后,您可以使用以下任一方法获取活动用户id:
Auth::user()->id
或
根据@Rahul Reghunath的回答 您可以尝试使用此方法访问api中间件中的用户id:
auth('api')->user();
例如:
Route::get("me",function (){
$userInfo=auth('api')->user();
if ($userInfo!==null)
{
return "User is logged in. id:".$userInfo->id;
}else{
return "User is not logged in.";
}
});
对我来说,它在使用承载令牌进行身份验证时显示了id:
User is logged in. id:6
根据@Rahul Reghunath的回答 您可以尝试使用此方法访问api中间件中的用户id:
auth('api')->user();
例如:
Route::get("me",function (){
$userInfo=auth('api')->user();
if ($userInfo!==null)
{
return "User is logged in. id:".$userInfo->id;
}else{
return "User is not logged in.";
}
});
对我来说,它在使用承载令牌进行身份验证时显示了id:
User is logged in. id:6
默认情况下,Laravel使用Laravel助手或Laravel静态方法提供当前用户。例如: 默认值=>
\Auth::user();
如果你为此使用了任何防护装置,那么就使用
\Auth::guard('guard_name')->user();
如果您使用了api,那么您可以通过
auth('api')->user()//它是一个laravel助手
这一个用于api路由,上面两个用于web路由Laravel默认情况下使用Laravel助手或Laravel静态方法提供当前用户。例如: 默认值=>
\Auth::user();
如果你为此使用了任何防护装置,那么就使用
\Auth::guard('guard_name')->user();
如果您使用了api,那么您可以通过
auth('api')->user()//它是一个laravel助手
这一个用于api路由,上面两个用于web路由可能重复的可能重复的我正在尝试访问auth:api middleware中的当前用户我正在尝试访问auth:api中间件中的当前用户