У меня есть страница входа в систему angular, которая отправляет запрос Ajax на мой сервер django (прослушивает отдельный порт от приложения angular), и я могу войти в систему моего пользователя, но файл cookie сеанса не возвращается в ответедля клиента хранить в угловом приложении.Вот как выглядит мой backend settings.py для аутентификации:
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',]
# Here are the session specific settings
SESSION_ENGINE = 'django.contrib.sessions.backends.signed_cookies'
SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_AGE = 1800 # The age of session cookies, in seconds
CORS_ORIGIN_ALLOW_ALL = True
А вот моя функция просмотра входа в систему, подключенная к моему пути входа:
@csrf_exempt
@require_POST
def login_view(request: HttpRequest):
payload = request.body.decode()
body = json.loads(payload)
username = body['username']
password = body['password']
user = authenticate(request, username=username, password=password)
if user is not None:
login(request, user)# Log the user in
return HttpResponse('Success')
else:
return HttpResponseBadRequest()
Я пытаюсь использовать проверку подлинности на основе файлов cookie / сеансов, чтобы, если пользователь закрывает страницу и перезапускает ее до истечения времени сеанса, он перенаправляет их обратно на целевую страницу, и для определенного поля ввода ввода допускаются только определенные параметры.должен быть возвращен на основе пользователя, и это должно быть обработано посредством аутентификации сеанса.Что-то не так в моем файле настроек?