使用 Django,我使用 rest_framework_simplejwt 应用程序设置了 JWT 身份验证。
我相信访问令牌的默认超时为 1 天,即使在 settings.py 中明确将其配置为 1 天后,该令牌在约 10 分钟后也不再起作用,并且服务器返回 401 响应。
设置.py:
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_simplejwt.authentication.JWTAuthentication',
'rest_framework.authentication.SessionAuthentication',
),
}
SIMPLE_JWT = {
'TOKEN_LIFETIME': timedelta(days=1),
'TOKEN_REFRESH_LIFETIME': timedelta(days=7),
}
我在想 Django 中的时间设置可能有问题,所以在 settings.py 中打印了 datetime.datetime.now(),奇怪的是在 startapp 期间调用了两次,时差为 2 小时。尽管如此,如果令牌生命周期应该是 1 天,它应该是有效的,所以我不确定是什么问题。
关于问题可能是什么的任何想法?非常感谢你。