Проблемы с не обновляющимися токенами Django REST JWT?

Я внедрял JWT-токены в свое приложение django REST и добился того, что оно в основном работает с помощью simple-jwt, найденного здесь. Я могу войти в систему и получить свои токены обновления и доступа, но я заметил, что если я пытаюсь обновить свой токен через jwt_views.TokenRefreshView.as_view(), я получаю ошибку следующего содержания:

HTTP 401 Unauthorized

{
    "detail": "Token is invalid or expired",
    "code": "token_not_valid"
}

Я пытался найти решение на reddit и stackoverflow, но безрезультатно. Почему мой токен не обновляется? Вот соответствующие части моего кода:

Релевантный код

settings.py

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        "rest_framework.authentication.SessionAuthentication",
        'rest_framework_simplejwt.authentication.JWTAuthentication',
    ),
}

SIMPLE_JWT = {
    'AUTH_HEADER_TYPES': ('Bearer', 'Token'),
    'AUTH_HEADER_NAME': 'HTTP_AUTHORIZATION',
}

models.py

#custom user profile model
class User(AbstractUser):
    link1 = models.CharField(max_length=100, blank=True)
    link2 = models.CharField(blank=True, max_length=100)
    link3 = models.CharField(blank=True, max_length=100)
    link4 = models.CharField(blank=True, max_length=100)
    about_me = models.CharField(blank=True, max_length=200)

    class Meta:
        db_table = 'auth_user'

urls.py

from rest_framework_simplejwt import views as jwt_views

urlpatterns += [
    path('admin/', admin.site.urls),
    path('api/token/', jwt_views.TokenObtainPairView.as_view(), name='token_obtain_pair'),
    path('api/token/refresh/', jwt_views.TokenRefreshView.as_view(), name='token_refresh'),
]

Ожидаемая и фактическая производительность

Предполагалось обновить токен с помощью api/token/refresh/ после получения его через api/token/, но возникла ошибка, говорящая о том, что токен недействителен/просрочен.

Что я пробовал

Честно говоря, я в основном пытался просто обновить страницу и повторить те же шаги снова и снова, надеясь, что что-то наконец изменится, потому что я действительно не имею понятия, как это происходит, учитывая, что я следовал 3 простым шагам из документации и каким-то образом потерпел неудачу в этом.

Редактировать

Я заметил, что когда я декодирую свой токен обновления на JWT.io, полезная нагрузка становится неузнаваемой. Что происходит?

Вернуться на верх