【问题标题】:JWT Auth custom user tokenJWT Auth 自定义用户令牌
【发布时间】:2017-08-12 21:16:13
【问题描述】:

我正在使用 laravel 5 和 JWTauth package。我想知道是否可以使用自定义令牌来验证用户身份。无需对用户的全部详细信息进行编码,只需对 id 和电子邮件进行编码。

我之所以要这样做是因为每次用户更新他的详细信息时,应用程序都需要生成新的令牌并更新标头承载令牌。否则令牌无效。还有其他方法/更好的方法吗?

非常感谢您的推荐。谢谢!

【问题讨论】:

  • 您不应将所有用户信息添加到令牌中,而应仅将标识符添加到主题声明中。您使用什么代码生成令牌?因为我的包默认这样做
  • 感谢您的回复。我怎么做?我正在使用这两种方法来生成用户令牌JWTAuth::fromUser($user) and JWTAuth::attempt($credentials)。这将返回用户的完整详细信息。

标签: php laravel-5 jwt


【解决方案1】:

您可以通过这种方式获取令牌。

$user = User::first();

$token = JWTAuth::fromUser($user);

try {
                //attempt to verify the credentials and create a token for the user
                if(!$userToken = JWTAuth::attempt($credentials)) {
                    return response()->json(['error' => 'invalid_credentials'], 401);
                }
            } catch(JWTException $e) {
                return response()->json(['error' => 'could_not_create_token'], 500);
            }

【讨论】:

    猜你喜欢
    • 2016-07-18
    • 2017-01-06
    • 2018-08-01
    • 2021-10-07
    • 2020-12-05
    • 2016-10-20
    • 2019-08-08
    • 2018-05-22
    • 2021-03-30
    相关资源
    最近更新 更多