【问题标题】:How to refresh token after expiry in django knox authentication?如何在 django knox 身份验证过期后刷新令牌?
【发布时间】:2022-11-28 04:08:36
【问题描述】:
我正在使用 django knox 令牌身份验证运行 django 应用程序。我能够使用该包进行登录。
但令牌过期后,url 响应抛出“无效令牌”。
我不明白令牌到期后如何刷新?我是否需要重新登录?如果是这样,用户会感到恼火。
如何以正确的方式做到这一点?
哪个是 django rest 框架的最佳令牌身份验证?
【问题讨论】:
标签:
python-3.x
django
django-rest-framework
django-rest-knox
【解决方案1】:
对我有用的是:
#setting.py
REST_KNOX = {
'TOKEN_TTL': timedelta(hours=10), #time to live (without refresh)
'TOKEN_LIMIT_PER_USER': None,
'AUTO_REFRESH': True,
'MIN_REFRESH_INTERVAL': 60 #number of seconds
}
您当然可以更改设置。如果您不指定 'MIN_REFRESH_INTERVAL',它将不起作用。
knox IMOP 的优点是 token 刷新是自动完成的,你不必自己做(不像 JWT,你需要用刷新 token 专门请求一个新的 token)。
它不如 JWT 安全。但好处是您在客户端要做的工作更少。