Как автологинить пользователя в django, если вкладка была закрыта, а он не вышел?

Я работаю над проектом Django. У меня есть бэкенд (Django) и фронтенд (HTML, CSS, JS). Все работает как ожидалось, например, вход, регистрация, выход и т.д. Однако, одно требование, и я знаю, что оно очень распространенное, заключается в том, что если вкладка закрыта после входа пользователя (он не вышел), и пользователь снова открывает url входа, он должен попасть на приборную панель вместо того, чтобы снова запрашивать учетные данные на экране входа.

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

Я видел некоторые другие ответы и попробовал поместить эту проверку в "login/" url моей страницы:

request.user.is_authenticated

Если я помещаю эту проверку на страницу входа в систему, она всегда выдает false. Я поместил ее в метод Get страницы входа, потому что я хочу, чтобы если пользователь вошел в систему и пытается перейти по url логина, он был перенаправлен на dashboard. Но это всегда дает False.

С чем я хочу получить помощь?

Буду очень признателен, если кто-нибудь подскажет мне, как достичь вышеуказанной цели.

Существует токен, который вы передаете фронтенду при входе в систему, и он хранится в cookies. В вашем случае, если вы выходите из системы после закрытия вкладки браузера, это означает, что вы не можете сохранить маркер в браузере. Как было сказано в одном из комментариев, попробуйте использовать сессии или реализовать систему аутентификации Simple JWT

Лучший способ - использовать файлы cookie. Ссылка: https://www.tutorialspoint.com/django/django_cookies_handling.htm

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