Laravel,如何从自定义表的 jwt 令牌获取登录用户
Posted
技术标签:
【中文标题】Laravel,如何从自定义表的 jwt 令牌获取登录用户【英文标题】:Laravel , how to get loggedin user from jwt token of a custom table 【发布时间】:2021-11-29 03:49:43 【问题描述】:我已经在自定义表中使用 JWT 创建了身份验证。身份验证工作正常,我能够登录并成功生成令牌。问题是无法从自定义表生成的 TOKEN 中获取 'id' 等信息。
$token = $request->header('Authorization');
$user = JWTAuth::toUser($token);
return $user;
返回的信息来自 'user' 表,而不是来自用于 jwt 身份验证的自定义表。 我的配置看起来像
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
'partners_credentials' => [
'driver' => 'eloquent',
'table' => 'partners_credentials',
'model' => App\Models\PartnerCredentials::class,
],
],
守卫
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'partners_credentials' => [
'driver' => 'session',
'provider' => 'partners_credentials',
'hash' => false,
],
],
我在这里缺少什么
【问题讨论】:
【参考方案1】:试试这个方法
$user = JWTAuth::user();
【讨论】:
你能解释一下你的答案吗?肯定不行以上是关于Laravel,如何从自定义表的 jwt 令牌获取登录用户的主要内容,如果未能解决你的问题,请参考以下文章
如何从 jwt 令牌获取确切的用户以及用户在 laravel 中的确切帖子