首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >检查Jwt令牌过期反应drf

检查Jwt令牌过期反应drf
EN

Stack Overflow用户
提问于 2019-11-23 06:09:08
回答 1查看 1.3K关注 0票数 0

如果我问错了地方,很抱歉。我正在使用Django drf for api,并在我的应用程序中使用react的前端服务。我正在使用simplejwt进行身份验证,我想检查访问过期,并从react刷新令牌,以便在过期时生成访问令牌。有什么更好的建议吗?

EN

回答 1

Stack Overflow用户

发布于 2019-11-23 06:26:47

基于simplejwt参考

2个JWT令牌由accessrefresh生成

refresh是long living,而access是short living。

如果您access过期,请使用refresh令牌获取访问令牌

示例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 curl \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"refresh":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX3BrIjoxLCJ0b2tlbl90eXBlIjoicmVmcmVzaCIsImNvbGRfc3R1ZmYiOiLimIMiLCJleHAiOjIzNDU2NywianRpIjoiZGUxMmY0ZTY3MDY4NDI3ODg5ZjE1YWMyNzcwZGEwNTEifQ.aEoAYkSJjoWH1boshQAaTkf8G3yn0kapko6HFRt7Rh4"}' \
  http://localhost:8000/api/token/refresh/

响应:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{"access":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX3BrIjoxLCJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiY29sZF9zdHVmZiI6IuKYgyIsImV4cCI6MTIzNTY3LCJqdGkiOiJjNzE4ZTVkNjgzZWQ0NTQyYTU0NWJkM2VmMGI0ZGQ0ZSJ9.ekxRxgb9OKmHkfy-zs1Ro_xs1eMLXiR17dIDBVxeT-w"}

您可以在配置中配置这两个令牌的有效期

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'ACCESS_TOKEN_LIFETIME': timedelta(minutes=5),
    'REFRESH_TOKEN_LIFETIME': timedelta(days=1),

不过,如果您想要手动生成

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from rest_framework_simplejwt.tokens import RefreshToken

def get_tokens_for_user(user):
    refresh = RefreshToken.for_user(user)

    return {
        'refresh': str(refresh),
        'access': str(refresh.access_token),
    }

get_tokens_for_user将返回新刷新和访问令牌的序列化表示形式

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59005030

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文