gpt4 book ai didi

django - 如何从 Django Rest Framework JWT token 中获取用户名

转载 作者:行者123 更新时间:2023-12-04 11:10:30 25 4
gpt4 key购买 nike

我正在使用 Django Rest Framework,并且我已经包含了一个名为 REST framework JWT Auth 的第三方包.当您将用户名/密码发送到某个路由时,它会返回一个 token 。然后需要 token 来获得某些路由的许可。但是,如何从 token 中获取用户名?我已经查看了所有包文档并浏览了 StackOverflow。它是一个 JSON 网络 token ,我假设有一个类似 username = decode_token(token) 的方法。但我还没有找到这样的方法。

最佳答案

对于我使用 Django (2.0.1)、djangorestframework (3.7.7)、djangorestframework-jwt (1.11.0)。

我必须执行以下操作才能从 token 中取回用户:

        token = request.META.get('HTTP_AUTHORIZATION', " ").split(' ')[1]
print(token)
data = {'token': token}
try:
valid_data = VerifyJSONWebTokenSerializer().validate(data)
user = valid_data['user']
request.user = user
except ValidationError as v:
print("validation error", v)

或者您可以编写一个中间件,根据用户的 token 设置用户。

关于django - 如何从 Django Rest Framework JWT token 中获取用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39823363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com