Frage

Ich versuche, eine föderierte Login-Anwendung auf meinem lokalen Rechner zu testen. Ich verwende Django zusammen mit der Socialauth Anwendung. Wenn die Protokollierung in auf localhost, jedoch bekomme ich eine 403 django Fehlerseite Verboten, mich zu informieren, dass die „CSRF-Token [ist] oder falsch fehlt.“ Ich gehe davon aus, dass die Mittel der Seite, die ich aus bin Zugriff nicht autorisiert ist.

Auf der Google Domain-Verwaltung Seite localhost hinzufügen kann, aber es passiert nichts, wenn Sie dann versuchen, die Seite zu verwalten.

So ist es eine Möglichkeit, Verbundanmeldung auf Ihrem lokalen Rechner zu testen?

War es hilfreich?

Lösung 2

Mein Fehler scheint einfach gewesen zu sein, nicht die CsrfResponseMiddleware hinzugefügt zu haben.

Also meine Middleware-Klassen in settings.py nun wie folgt aussehen:

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'openid_consumer.middleware.OpenIDMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.middleware.csrf.CsrfResponseMiddleware',
    #'socialauth.middleware.FacebookConnectMiddleware',
)

Dies ist der Fehler weg, und alles funktioniert.

Andere Tipps

Der Fehler

"CSRF-Token [ist] fehlt oder falsch. "

bedeutet nur, dass die CSRF-Token des django erwartet wird fehlt oder falsch ist. AFAIK die CSRF-Token-Funktionalität wurde vor nicht allzu langer Zeit hinzugefügt, vielleicht müssen Sie Ihre Django installieren aktualisieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top