Проверка подлинности Django drf simple-jwt "detail": "Не найдена активная учетная запись с данными учетными данными" - PullRequest
3 голосов
/ 29 апреля 2019

Я выполняю аутентификацию пользователя с помощью django-rest_framework_simple-jwt с настраиваемым пользователем, Мои модели.:

REST_FRAMEWORK={
  'DEFAULT_AUTHENTICATION_CLASSES': [
      'rest_framework_simplejwt.authentication.JWTAuthentication',
   ]}

my urls.py:

urlpatterns = [
       url(r'^api/token/$', TokenObtainPairView.as_view(),  name='token_obtain_pair'),
       url(r'^api/token/refresh/$', TokenRefreshView.as_view(), name='token_refresh'),]

при входе в систему возвращает ошибку, что "detail": "No active account found with the given credentials" все мои пользователи были активны.Я понятия не имею, чтобы разобраться с этим, мне нужна помощь. Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 18 июня 2019

Убедитесь, что ваш пароль хешируется, прежде чем он будет сохранен в вашей базе данных. Я столкнулся с той же проблемой и обнаружил, что мои пароли хранятся в виде простого текста. Добавление следующего в мой UserSerializer решило проблему

from django.contrib.auth.hashers import make_password

def validate_password(self, value: str) -> str:
    """
    Hash value passed by user.

    :param value: password of a user
    :return: a hashed version of the password
    """
    return make_password(value)
0 голосов
/ 30 апреля 2019

Вы не забыли установить в настройках:

AUTH_USER_MODEL = 'your_app_name.User'
...