![](/img/trans.png)
[英]How do I get the JWT tokens from user in Django RestFramework
[英]Cannot get jwt tokens sent from frontend in backend
我是 Django 和 simplejwt 的新手,我遇到了一个问题。 令牌从我们的 Angular 前端以“app_token”和“access_token”的名称发送给我,但我找不到在我的 Django 代码中检索它们的方法。 我尝试过像“HTTP_APP_TOKEN”和“HTTP_ACCESS_TOKEN”这样的名称,甚至让我们的前端团队重命名令牌,但这也没有帮助。 有没有人有任何想法?
由于我还没有足够的声誉来添加评论,我想确定您是否使用nginx来转发您的请求。 如果是,也许关注答案会有所帮助,否则,请评论我删除。
默认情况下,Nginx 忽略带有下划线的标题。 这可以解释为什么您的标头属性(如app_token
、 access_token
)无法传递到后端。
1> 你可以在你的nginx 配置中设置underscores_in_headers
。
2> 使用不带下划线的标题preperty。
您可以从请求中获取令牌; 例如,您使用 IsAuthenticated 权限保护视图,并且您在视图中有一个方法名称
def get(self, request):
token = request.headers['Authorization']
# other code
如果您使用过 simplejwt,则令牌会像Bearer access_token
一样从前端作为标头传递
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.