2016-01-21 1 views
0

La question explique presque tout. J'écris une application Django qui utilisera l'authentification Facebook via l'authentification sociale Python. J'ai créé une application en utilisant des développeurs Facebook. La chose est, je n'ai pas le domaine mis en place avec mon site Web car je suis encore en train de tester sur localhost. Je n'ai pas pu mettre l'URL localhost dans les paramètres de l'application Facebook. Lorsque j'essaie de me connecter via localhost, l'URL doit correspondre au domaine.Comment tester l'authentification Facebook en utilisant python social auth dans localhost? Édité avec plus de détails

Que faire maintenant? Sans test, je ne peux pas héberger mon site web non plus car je ne suis pas sûr que tout fonctionnera comme je le veux.

EDIT:

J'ai créé une application de test et a été en mesure de mettre localhost: 8000 comme l'URL du site et localhost comme application domaine. Cependant, le même problème existe toujours. Il dit que les 2 urls doivent correspondre ou quelque chose. REMARQUE: sur mon hôte local, la connexion est 127.0.0.1:8000/login/facebook. Et oui, j'ai mis à jour l'identifiant et le secret de l'application pour mon application de test.

Que faire maintenant?

Répondre

3

Vous devriez être en mesure de créer une application de test dans Facebook (il y a une option de menu 'Créer une application de test'). Il se peut que vous deviez d'abord créer une application, et une fois que vous l'avez, vous serez en mesure de créer l'application de test pour cela, mais vous pouvez certainement créer une application de test.

Dans cette application de test, utilisez http://localhost:8000/ comme URL locale. Assurez-vous simplement qu'il s'agit de la même URL exacte (c'est-à-dire que vous ne pouvez pas avoir 'localhost' sur Facebook, mais démarrez le serveur pour '127.0.0.1'). Notez que AppID et AppSecret que vous utiliserez sont de l'application de test (pas l'application de production).

Cela devrait fonctionner. Je n'ai pas utilisé ceci pour python-social-auth mais je l'utilise pour tester avec django-allauth, et il n'y a aucune raison pour que ce soit différent.

+0

Bonjour, J'ai créé une application de test et j'ai pu mettre http: // localhost: 8000/comme site url et localhost comme domaine d'application. Cependant, le même problème existe toujours. Il dit que les 2 urls doivent correspondre ou quelque chose. REMARQUE: sur mon hôte local, la connexion est http://127.0.0.1:8000/login/facebook. Et oui, j'ai mis à jour l'identifiant et le secret de l'application pour mon application de test. –

+0

Si vous utilisez localhost: 8000 sur facebook (ce qui est la seule chose que vous pouvez utiliser car il n'acceptera pas d'adresse IP), alors votre identifiant doit être localhost: 8000/login/facebook. Sur votre navigateur, assurez-vous de démarrer à partir de http: // localhost: 8000, puis naviguez jusqu'à la page de connexion. – dkarchmer