Wenn ich Google OAuth verwenden, um meinen Benutzer zu überprüfen, nachdem Verifizierung übergeben wurde, möchte ich auf die Seite, die Benutzer besuchen vor der Behörde umleiten, also möchte ich den Seitenpfad zum Benutzer Cookie speichern, so dass ich die Implementierung wie folgt:Warum funktioniert HttpResponseRedirect.set_cookie nicht, wenn ich im Django-Projekt verwende?
def get_login_resp(request, redirect):
print(redirect)
auth_url = "https://accounts.google.com/o/oauth2/auth?" + urlencode({
"client_id": GOOGLE_CLIENT_ID,
"response_type": "code",
"redirect_uri": make_redirect_url(request, redirect),
"scope": "profile email",
"max_auth_age": 0
})
resp = HttpResponseRedirect(auth_url)
max_age = 3600 * 24
expires = datetime.strftime(datetime.utcnow() + timedelta(seconds=max_age), "%a, %d-%b-%Y %H:%M:%S GMT")
print(expires)
resp.set_cookie('google_auth_redirect', redirect, max_age=max_age, expires=expires,
domain=LOGIN_COOKIE_DOMAIN, secure=True, httponly=True)
print(resp._headers)
print(resp.cookies)
return resp
ps: Umleitung ist die Seite Pfad, die ich speichern möchten
Aber wenn Anfrage der Login-uRL mit Postman, kann ich nur diese Header sehen: response headers
Und diese Cookies: Cookies
Also, wie kann ich mit diesem Problem tun? Es gibt keine Fehlerinfo für mich.
wenn ich drucken (resp.cookies) ich das sehen kann: 'Set-Cookie: google_auth_redirect =“/lists/oauth2callback "; Domäne = .localhost: 8000; abläuft = Fr, 24-Nov-2017 03:12:13 GMT; HttpOnly; Höchstalter = 86400; Pfad = /; Sicher ' – Leekin
eh ~, ich benutze den Debug-Modus, um Schritt für Schritt in den Django-Code zu laufen, aber ich kann keine Frage finden. – Leekin