Django rest framework: Cookies теряются после обновления страницы
У меня проблема с cookies. Мои куки для входа в систему теряются, когда моя страница перенаправляется на страницу профиля после входа в систему. Я вижу, что мои cookies устанавливаются после успешного входа, но затем они теряются при перенаправлении страницы. Страница профиля сначала получает профиль, выполняя запрос get. Пожалуйста, помогите мне. Это происходит только на рабочем сервере, но не на сервере разработки. Мой backend и frontend имеют разные домены.
Мой вид входа -
class LoginView(APIView):
def post(self,request,format=None):
data = request.data
response = Response()
username = data.get('username', None)
password = data.get('password', None)
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
data = get_tokens_for_user(user)
response.set_cookie(
key = settings.SIMPLE_JWT['AUTH_COOKIE'],
value = data["access"],
expires = settings.SIMPLE_JWT['ACCESS_TOKEN_LIFETIME'],
secure = settings.SIMPLE_JWT['AUTH_COOKIE_SECURE'],
httponly = settings.SIMPLE_JWT['AUTH_COOKIE_HTTP_ONLY'],
samesite = settings.SIMPLE_JWT['AUTH_COOKIE_SAMESITE'],
)
response.set_cookie(
key = "tokenvalidate",
value = data["access"][0:len(data['access'])//2],
expires = settings.SIMPLE_JWT['ACCESS_TOKEN_LIFETIME'],
secure = settings.SIMPLE_JWT['AUTH_COOKIE_SECURE'],
httponly = False,
samesite = settings.SIMPLE_JWT['AUTH_COOKIE_SAMESITE'], #setting this cookie for logout functionality. frontend can remove this non httponly cookie using js in logout function.
#if this cookie is not sent in request then the authorization will be failed.
)
csrf.get_token(request)
response.data = {"Success" : "Login successfully","data":data}
return response
else:
return Response({"No active" : "This account is not active!!"},status=status.HTTP_404_NOT_FOUND)
else:
return Response({"Invalid" : "Invalid username or password!!"},status=status.HTTP_404_NOT_FOUND)