Django аутентификация не работает для браузера - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь использовать встроенную систему аутентификации django для моего приложения.

Я могу аутентифицировать пользователя во время входа в систему, но для следующих запросов request.user.is_authenticated приходит как False

вид входа в систему:

 user_name = request_body['username']
 password = request_body['password']
 user = authenticate(username=user_name, password=password)
 if user is not None:
   login(request, user)
   request.session.set_expiry(86940)

Я написал декоратор для проверки подлинности, код:

 from django.http import HttpResponse

def authenticate_request(f):

    def check(request):
        if request.user.is_authenticated:   #coming as false even after authenication is done
            return f(request)
        else:
            return HttpResponse(status=401)

    return check

Чего мне не хватает при аутентификации запроса?

1 Ответ

0 голосов
/ 24 марта 2020

Проверьте текущий SESSION_COOKIE_AGE и убедитесь, что вы не перезаписали его где-нибудь еще в вашей программе. Убедитесь, что вы не сразу вышли из системы. Значение по умолчанию SESSION_COOKIE_AGE составляет 1209600 (2 недели, в секундах).

...