Como prueba de acceso a Google federada en el servidor local
-
09-10-2019 - |
Pregunta
Estoy intentando probar una aplicación de acceso federado en mi máquina local. Estoy usando Django junto con el href="https://github.com/uswaretech/Django-Socialauth" rel="nofollow"> Socialauth aplicación . Cuando el registro en el host local, sin embargo, aparece un 403 Forbidden Django página de error, que me informa de que el "CSRF token de [está] falta o es incorrecto." Asumo que eso significa que el sitio que estoy accediendo desde no está autorizado.
En la página de Google puede agregar localhost
, pero no pasa nada cuando se vuelva a intentar para gestionar esa página.
Entonces, ¿hay una manera de probar el acceso federado en su máquina local?
Solución 2
Mi error parece simplemente haber sido no haber añadido el CsrfResponseMiddleware.
Así que mis clases de middleware en settings.py
ahora queda como:
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',
)
Esto elimina el error, y todo funciona bien.
Otros consejos
El error
"CSRF token de [es] falta o incorrecta. "
medios sólo eso, el CSRF token que Django está esperando o es incorrecto. Que yo sepa la funcionalidad token CSRF se añadió no hace mucho tiempo, tal vez usted necesita para actualizar su instalación de Django.