相关文章推荐
被表白的绿茶  ·  MT5 ...·  3 月前    · 
没人理的米饭  ·  VuePress V1 ...·  7 月前    · 
酒量小的热带鱼  ·  Linux ...·  1 年前    · 
爱旅游的牛排  ·  使用jQuery ...·  1 年前    · 
睿智的小蝌蚪  ·  python - Django not ...·  1 年前    · 

django simple jwt get user from token

如果你使用了 Django Simple JWT 这个库,那么你可以使用 get_user_from_token 函数来从 JWT 令牌中获取用户。

这个函数接受两个参数:

  • request: 一个 Django request 对象
  • token_prefix: 一个字符串,表示 JWT 令牌所在的 HTTP 头。例如,如果你使用的是 "Authorization: Bearer {TOKEN}" 这种格式,那么 token_prefix 就应该设为 "Bearer"。
  • 下面是一个使用示例:

    from rest_framework_simplejwt.tokens import RefreshToken
    from rest_framework_simplejwt.utils import get_user_from_token
    def view(request):
        refresh_token = RefreshToken(request.headers.get("Authorization").split()[1])
        user = get_user_from_token(request, "Bearer")
        # ...
    

    注意,这个函数只能用于获取身份验证了的用户。如果 JWT 令牌无效或过期,或者用户不存在,那么它会返回 None。

    I hope this information helps. If you have any further questions, feel free to ask.

  •