2010-12-12 86 views
1

J'essaye de tester une application de connexion fédérée sur ma machine locale. J'utilise django avec l'application Socialauth. Lors de la connexion sur localhost, cependant, j'obtiens une page d'erreur 403 Forbidden django, m'informant que le "jeton CSRF [est] manquant ou incorrect." Je suppose que cela signifie que le site auquel j'accède n'est pas autorisé.Comment tester google federated login sur localhost

Sur le google domain management page, vous pouvez ajouter localhost, mais rien ne se produit lorsque vous essayez ensuite de gérer cette page.

Alors, existe-t-il un moyen de tester la connexion fédérée sur votre machine locale?

Répondre

0

Mon erreur semble simplement avoir été de ne pas avoir ajouté le CsrfResponseMiddleware.

donc mes classes de middleware dans settings.py ressemble maintenant:

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', 
) 

Cela enlève l'erreur, et tout fonctionne bien.

0

L'erreur

"jeton CSRF [est] manquant ou incorrect."

signifie simplement que le jeton CSRF attendu par django est manquant ou incorrect. AFAIK la fonctionnalité jeton CSRF a été ajoutée il n'y a pas si longtemps, peut-être vous avez besoin de mettre à jour votre installation Django.