Je voulais juste savoir si je pouvais développer des applications Facebook dans localhost.
Edit: 2-15-2012 Voici comment utiliser l'authentification FB pour un site Web localhost.
Je trouve plus évolutif et pratique de créer une deuxième application Facebook. Si je construis MyApp, alors je vais en créer un deuxième appelé MyApp-dev.
Website
sous 'Sélectionnez le mode d'intégration de votre application avec Facebook' (Dans la version récente de Facebook, vous pouvez le trouver sous Paramètres> De base> Ajouter une plate-forme - Sélectionnez ensuite le site )if Rails.env == 'développement' || Rails.env == 'test' Rails.application.config.middleware.use OmniAuth :: Builder do fournisseur: facebook, 'DEV_APP_ID', 'DEV_APP_SECRET' fin sinon # Production Rails.application.config.middleware.use OmniAuth :: Builder do fournisseur: facebook, 'PRODUCTION_APP_ID', 'PRODUCTION_APP_SECRET' fin fin
Je préfère cette méthode car une fois qu’elle est configurée, les collègues et les autres machines n’ont pas de configuration supplémentaire.
Bien sûr, vous pouvez simplement ajouter l’URL localhost (sans "http") dans votre app_domain, puis dans votre site_url http://localhost
(avec http)
Mettre à jour
Facebook change un peu les choses maintenant, il suffit d'aller dans les paramètres de l'application et dans l'URL du site, ajoutez simplement http: //localhost
et laissez le domaine d'application vide.
Voici ma config et cela fonctionne très bien pour l'API PHP:
domaine d'application
http://localhost
URL du site
http://localhost:8082/
REMARQUE: à partir de 2012, Facebook permet l'enregistrement de "localhost" en tant qu'URL de retour. Vous aurez peut-être encore besoin d’une solution de contournement similaire pour d’autres fournisseurs (Microsoft, par exemple).
Si vous avez besoin d'un vrai nom de domaine enregistré auprès de Facebook (par exemple, my.really.own.domain.com), vous pouvez rediriger localement les demandes de ce domaine vers votre ordinateur. L’approche par défaut la plus simple sur n’importe quel système d’exploitation consiste à modifier le fichier "hôtes" pour mapper le domaine en 127.0.0.1 (voir http://technet.Microsoft.com/en-us/library/bb727005.aspx#EDAA et https://serverfault.com/questions/118290/cname-record-alias-in-windows-hosts-file ).
J'utilise habituellement Fiddler pour le faire pour moi (sous Windows avec IIS local) - voir des exemples sur http://www.fiddler2.com/Fiddler/Dev/ScriptSamples.asp .
if (oSession.HostnameIs("my.really.own.domain.com")) {
oSession.Host="localhost:80";
}
L'approche des approches de fichier d'hôtes ne fonctionne pas avec Visual Studio Development Server car elle nécessite que les URL entrantes soient localhost/127.0.0.1. Si vous devez travailler avec (ou éventuellement avec IIS express) pour remplacer Host - Utilisation de Fiddler avec IIS7 Express
Facebook n'autorisait plus l'URL de rappel 'localhost' pour les applications Facebook FBML
Avec le nouveau centre de développement, c'est maintenant plus facile:
1) Laissez les domaines d'application vides.
2) Cliquez sur Ajouter une plate-forme
3) L’URL du site doit correspondre au chemin complet de votre hôte local.
4) Enregistrer les modifications
Je viens de découvrir une solution de contournement: vous pouvez rendre votre machine locale accessible à l’aide de http://localtunnel.com . Vous devrez modifier (temporairement) certaines URL utilisées dans votre code d'application/code HTML afin que les liens pointent vers le domaine temporaire, mais au moins facebook peut atteindre votre ordinateur.
Dans les paramètres de base de votre application ( https://developers.facebook.com/apps ) Sous Paramètres-> Basiques-> Sélectionnez le mode d'intégration de votre application avec Facebook ...
Utilisez "URL du site:" et "URL du site mobile:" pour conserver vos URL de production et de développement, respectivement. Les deux sites seront autorisés à s'authentifier. J'utilise simplement Facebook pour l'authentification, de sorte que je n'ai besoin d'aucune des fonctionnalités de redirection de site mobile. En général, lorsque je teste l'authentification, je remplace habituellement l'URL "Site mobile:" par mon site "localhost: 12345", puis je le remets à l'état normal lorsque j'ai terminé.
Il y a ! Ma solution fonctionne lorsque vous créez une application, mais que vous souhaitez utiliser l'authentification Facebook sur votre site Web. Cette solution ci-dessous n'est PAS nécessaire lorsque vous souhaitez créer une application intégrée à la page FB.
Le fait est que vous ne pouvez pas définir "localhost" en tant que domaine dans la page de configuration facebook de votre application. Raisons de sécurité ?
Vous devez accéder à votre fichier hôte dans OSX/Linux etc/hosts et ajouter la ligne suivante: 127.0.0.1 dev.yourdomain.com
Le domaine que vous mettez ce que vous voulez. Une erreur est d’ajouter cette ligne: Localhost dev.votredomaine.com (au moins sur osx snow leopard dans ne fonctionne pas).
Ensuite, vous devez vider votre cache DNS. Sous OSX: saisissez dscacheutil -flushcache dans le terminal . Pour finir, retournez sur le site Web du développeur Facebook, et dans la page de configuration de votre application, vous pouvez ajouter le domaine "dev.votredomaine.com". .
Si vous utilisez un programme tel que Mamp, Easyphp ou autre, assurez-vous que le port pour Apache est 80.
Cette solution devrait fonctionner pour Windows car elle contient également un fichier hosts. Néanmoins, autant que je me souvienne, Windows 7 n'utilise plus ce fichier, mais cette astuce devrait fonctionner si vous trouvez un moyen de forcer Windows à utiliser un fichier hosts.
Essaye ça ---
https://www.facebook.com/help/community/question/?id=589302607826562
1 - Cliquez sur Applications, puis sélectionnez votre application.
2 - Cliquez sur le bouton Paramètres situé à gauche de l'écran.
3 - Dans les paramètres de base, cliquez sur le bouton Ajouter une plate-forme situé sous la configuration des paramètres
4 - Sélectionnez Site Web dans la boîte de dialogue de la plate-forme.
5 - Entrez votre URL (localhost fonctionne ici).
6 - Dans l'entrée de texte Domaines de l'application, ajoutez votre domaine qui correspond à celui de l'URL.
7 - Enregistrez vos paramètres.
Je pense que vous devriez pouvoir développer des applications à l’aide du serveur Web de développement de Visual Studio: Démarrez une nouvelle application FaceBook à l’adresse: http://www.facebook.com/developers/ . Définissez ensuite les paramètres de l’URL du site et de l’URL du canevas sur l’instance en cours de votre site Web, par exemple: http: // localhost: 1062 /
Voici quelques liens qui devraient vous aider à démarrer avec FaceBook:
J'espère que cela t'aides.
Supposons que vous avez enregistré votre application en tant que:
app.domain.com
Il vous suffit de modifier le fichier/etc/hosts en ajoutant
127.0.0.1 dev01.app.domain.com
Ensuite, modifiez votre configuration Apache
ServerName dev01.app.domain.com
et redémarrez Apache.
Vous aurez besoin de mettre votre URL dans une variable pour pouvoir l'utiliser comme paramètre XML sur certains appels:
<fb:login-button registration-url="http://<?=$URL?>/register" />
Vous n’avez pas assez de crédibilité pour commenter la réponse la plus votée, mais au moins dans mon environnement Rails (4), Rails est à http://localhost:3000
, pas http://www.localhost:3000
. Quand je l'ai changé en http://localhost:3000
, cela a bien fonctionné. Pas besoin de modifier un fichier hosts.
cela fonctionne en juin 2018, même après l'exigence HTTPS. Il semble qu'une application de test ne nécessite pas https:
créer une application de test: https://developers.facebook.com/docs/apps/test-apps/
ensuite, dans l'application test, suivez les étapes simples décrites dans cette vidéo: https://www.youtube.com/watch?v=7DuRvf7Jtkg
app domain : localhost
site URL : http://localhost:4440/
travaillé pour moi avec la nouvelle interface utilisateur.
Ma solution fonctionne bien dans localhost ..... Pour les URL de site, utilisez http://localhost/
Et pour les domaines d'application, utilisez localhost/folder_name
Rest sa montre redflag dans App Domain..App fonctionne bien)
Dernière mise à jour: Vous n'avez pas à donner d'URL si vous le testez en développement. Vous pouvez laisser les champs vides. Assurez-vous que votre application est en mode de développement. Si pas désactiver le statut de vivre.
Pas besoin de fournir l'URL du site, les domaines d'application ou une redirection valide oauth uri.