J'essaie de tester les boutons OAuth , mais ils reviennent tous (Facebook, Twitter, LinkedIn) avec des erreurs qui semblent indiquer que je ne peux pas les tester ou les utiliser à partir d'une URL locale .
Comment les gens travaillent-ils généralement dans le développement avec des éléments OAuth s'ils semblent tous nécessiter des environnements de connexions non-dev et non locaux ?
Réponses:
Mise à jour d'octobre 2016 : le plus simple maintenant: utilisez lvh.me qui pointe toujours vers
127.0.0.1
.Réponse précédente :
Étant donné que la demande de rappel est émise par le navigateur, en tant que réponse de redirection HTTP, vous pouvez configurer votre fichier .hosts ou équivalent pour pointer un domaine qui n'est pas
localhost
à 127.0.0.1.Disons , par exemple , vous enregistrez le rappel suivant avec Twitter:
http://www.publicdomain.com/callback/
. Assurez-vous que celawww.publicdomain.com
pointe vers 127.0.0.1 dans votre fichier hosts, ET que Twitter peut faire une recherche DNS réussie sur www.publicdomain.com, c'est-à-dire que le domaine doit exister et que le rappel spécifique devrait probablement renvoyer un message d'état 200 si demandé.MODIFIER :
Je viens de lire l'article suivant: http://www.tonyamoyal.com/2009/08/17/how-to-quickly-set-up-a-test-for-twitter-oauth-authentication-from-your-local -machine / , qui était lié à depuis cette question: Twitter oAuth callbackUrl - localhost development .
Pour citer l'article:
Cela devrait être plus facile que de manipuler le fichier .hosts.
Notez que maintenant (août 14) bit.ly n'autorise pas le transfert de lien vers localhost; Cependant, le raccourcisseur de lien Google fonctionne.
Modification PS: (novembre 18): le raccourcisseur de lien Google a cessé de prendre en charge localhost ou 127.0.0.1.
la source
.me
) dans les URL de redirection. En conséquence, lvh.me ne fonctionnait pas. J'ai trouvé le succès avec lacolhost.com à la place.Ou vous pouvez utiliser https://tolocalhost.com/ et configurer comment il doit rediriger un rappel vers votre site local. Vous pouvez spécifier le nom d'hôte (s'il est différent de localhost, c'est-à-dire yourapp.local et le numéro de port). À des fins de développement uniquement.
la source
Vous pouvez également utiliser ngrok: https://ngrok.com/ . Je l'utilise tout le temps pour avoir un serveur public fonctionnant sur mon hôte local. J'espère que cela t'aides.
Servo.net et https://localtunnel.github.io/www/ sont d'autres options qui fournissent même gratuitement votre propre domaine personnalisé.
la source
./ngrok http 8080 -host-header="localhost:8080"
exécuter et je courais avec une URL publique.Google n'autorise pas l'API de test d'authentification sur l'hôte local en utilisant
http://webporject.dev
ou.loc
et .etc et le lien court google qui a raccourci votre URL locale (http://webporject.dev
) égalementbit.ly
:). Google n'accepte que les URL qui commencenthttp://localhost/
...si vous souhaitez tester google auth api, vous devez suivre ces étapes ...
si vous utilisez,
openserver
accédez au panneau des paramètres et cliquez suraliases tab
et cliquez sur le menu déroulant, puis recherchezlocalhost
et choisissez-le.maintenant, vous devez choisir le dossier racine de votre projet Web local en cliquant sur la liste déroulante suivante qui se trouve à côté de la première liste déroulante.
et cliquez sur un bouton appelé
add
et redémarrez opensever.maintenant votre projet local disponible sur ce lien,
http://localhost/
vous pouvez également coller cette URL locale à google auth api dans leredirect url
champ ...la source
Vous pouvez modifier le fichier hosts sous Windows ou Linux Windows: C: \ Windows \ System32 \ Drivers \ etc \ hosts Linux: / etc / hosts
après avoir terminé vos tests, il vous suffit de commenter la ligne que vous ajoutez pour la désactiver
la source
Pour les utilisateurs de Mac, modifiez le
/etc/hosts
fichier. Vous devez utilisersudo vi /etc/hosts
si c'est en lecture seule. Après autorisation, le serveur oauth envoie l'URL de rappel, et puisque cette URL de rappel est rendue sur votre navigateur local, le paramètre DNS local fonctionnera:la source
Prendre Google OAuth comme référence
Dans votre onglet client OAuth
(http://localhost:3000)
à JavaScript autorisés origines URIsDans votre écran de consentement OAuth
mywebsite.com
aux domaines autorisésModifiez le fichier hosts sous Windows ou Linux
Windows C:\Windows\System32\Drivers\etc\hosts
Linux : /etc/hosts
pour l'ajouter127.0.0.1 mywebsite.com
(NB: commentez-en s'il y en a d'autres 127.0.0.1)la source