Я пытаюсь реализовать сеансовую аутентификацию в drf. Я ничего не понял из документации django сессии, а также из документации drf. Я хочу иметь конечную точку API для входа в систему, выхода из системы и одну для перечисления всех пользователей.
class Login(APIView):
def post(self, request, format=None):
email = request.POST.get("email", "")
print(request.session)
password = request.POST.get("password", "")
user = authenticate(request,username=email,password=password)
if user is not None:
login(request,user)
print(user)
return Response('yes')
else :
return Response('No')
class UserList(APIView):
authentication_classes = (SessionAuthentication,)
permission_classes = [
IsAuthenticated,
]
def get(self, request, format=None):
user = User.objects.all()
print(request.user)
serializer = UserSerializer(user, many=True)
return Response(serializer.data)
Settings.py
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
Я пытался вызвать API входа в систему из браузера. Да, это вошло в систему. Теперь, когда я пытаюсь вызвать просмотр списка пользователей, я получаю данные аутентификации, не предоставленные. сеансы в дрф.