Session-Wert fehlt nach Weiterleitung mit Django Python-Social-Auth
Ich arbeite an einem Django-Projekt, das python-social-auth verwendet, um die Authentifizierung mit Facebook durchzuführen. Ich betreibe den Django-Server auf localhost und habe Facebook mit meiner Anwendung eingerichtet, um zu @ umzuleitehttp: //127.0.0.1: 8000 / complete / facebook /, das die Pipeline von python-social-auth startet, um einen Benutzer zu authentifizieren. Ich verwende Postgres als meine Datenbank.
Wenn diese Methode aufgerufen wird und versucht, sich zu authentifizieren, werden keine Informationen zur Sitzung gefunden. Vonhttps: //github.com/omab/python-social-auth/issues/53, Ich denke, das Sessionid-Cookie wird überschrieben. Wenn ich die Facebook-Weiterleitung an eine andere URL sende, um eine statische Seite ohne Authentifizierung zu laden, tritt kein Fehler auf, aber ich authentifiziere mich auch nicht oder erhalte keine Informationen von Facebook.
Wie würde ich vorgehen, um den Sessionid-Cookie nicht zu überschreiben - wenn das natürlich das eigentliche Problem ist - oder gibt es ein anderes Problem, das mir hier fehlen könnte?
[03/Jun/2016 05:19:58] "GET /login/facebook/?next=/lithium-web/ HTTP/1.1" 302 0
Internal Server Error: /complete/facebook/
Traceback (most recent call last):
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response
response = self.process_exception_by_middleware(e, request)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/django/views/decorators/cache.py", line 57, in _wrapped_view_func
response = view_func(request, *args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view
return view_func(*args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/apps/django_app/utils.py", line 51, in wrapper
return func(request, backend, *args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/apps/django_app/views.py", line 28, in complete
redirect_name=REDIRECT_FIELD_NAME, *args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/actions.py", line 43, in do_complete
user = backend.complete(user=user, *args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/backends/base.py", line 41, in complete
return self.auth_complete(*args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/utils.py", line 229, in wrapper
return func(*args, **kwargs)
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/backends/facebook.py", line 71, in auth_complete
state = self.validate_state()
File "/Users/mac/Desktop/lithium-web/lib/python2.7/site-packages/social/backends/oauth.py", line 88, in validate_state
raise AuthStateMissing(self, 'state')
AuthStateMissing: Session value state missing.