Come prova di google login federata su localhost
-
09-10-2019 - |
Domanda
Sto cercando di testare un'applicazione di accesso federata sulla mia macchina locale. Sto usando Django assieme al href="https://github.com/uswaretech/Django-Socialauth" rel="nofollow"> Socialauth applicazione . Quando si accede su localhost, però, ho un 403 Forbidden Django pagina di errore, che mi informava che il "CSRF token di [è] mancanti o errate." Sto assumendo che significa che il sito che sto accedendo da non è autorizzato.
è possibile aggiungere localhost
, ma non succede nulla quando si tenta per gestire quella pagina.
Quindi, c'è un modo per testare login federata sul computer locale?
Soluzione 2
Il mio errore sembra non semplicemente essere stato quello di aver aggiunto il CsrfResponseMiddleware.
Quindi, le mie lezioni di middleware in settings.py
appare ormai come:
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',
)
Questo toglie l'errore, e tutto funziona bene.
Altri suggerimenti
L'errore
"CSRF token di [è] mancante o non corretta ".
significa solo che, il CSRF token di cui Django si aspetta è mancante o errato. Per quanto ne so la funzionalità token CSRF non è stato aggiunto molto tempo fa, forse hai bisogno di aggiornare il tuo Django installare.