#django #django-rest-framework #django-rest-knox
#django #django-rest-framework #django-rest-knox
Вопрос:
Я не изменил настройки Knox
в своем приложении Django. Время истечения срока действия по умолчанию составляет 10 часов, как я могу изменить это, чтобы оно не истекло.
Ответ №1:
TOKEN_TTL
REST_KNOX = {
'TOKEN_TTL': timedelta(hours=10), # default time 10h
}
просто сделайте
REST_KNOX = {
'TOKEN_TTL': None, # will create tokens that never expire
}
Ответ №2:
Измените TOKEN_TTL
элемент на REST_KNOX
. Основано на документах. TOKEN_TTL
Это то, как долго токен может существовать до истечения срока его действия. Токены с истекшим сроком действия автоматически удаляются из системы.
from datetime import timedelta
from rest_framework.settings import api_settings
REST_KNOX = {
'SECURE_HASH_ALGORITHM': 'cryptography.hazmat.primitives.hashes.SHA512',
'AUTH_TOKEN_CHARACTER_LENGTH': 64,
'TOKEN_TTL': timedelta(hours=10), # default time 10h
'USER_SERIALIZER': 'knox.serializers.UserSerializer',
'TOKEN_LIMIT_PER_USER': None,
'AUTO_REFRESH': False,
'EXPIRY_DATETIME_FORMAT': api_settings.DATETME_FORMAT,
}
Посмотрите документы для получения дополнительной информации.
Комментарии:
1. Я просмотрел документы, но не смог найти ответ. Токен не должен истекать
Ответ №3:
В конце концов, я нашел ответ. «TOKEN_TTL»: нет для токена с истекшим сроком действия. Спасибо, все