it-swarm.com.de

Facebook-Entwicklung in localhost

Ich wollte nur wissen, ob ich Facebook-Anwendungen in localhost entwickeln kann. 

164
Abhishek

Edit: 15.02.2012 So verwenden Sie die FB-Authentifizierung für eine localhost-Website. 

Ich finde es skalierbarer und bequemer, eine zweite Facebook-App einzurichten. Wenn ich MyApp baue, mache ich eine zweite namens MyApp-dev.

  • Erstellen Sie eine neue App unter https://developers.facebook.com/apps
  • (Neu 15.02.2012) Aktivieren Sie das Kontrollkästchen Website unter 'Wählen Sie aus, wie Ihre Anwendung in Facebook integriert werden soll' (In der aktuellen Facebook-Version finden Sie diese unter Einstellungen> Grundeinstellungen> Plattform hinzufügen - Wählen Sie dann Website )
  • Setzen Sie das Feld Site URL (NOT das Feld App Domains) auf http: //www.localhost: 3000(diese Adresse ist für Ruby on Rails, ändern Sie sie nach Bedarf).

enter image description here

  • Geben Sie in Ihrem Anwendungsinitialisierer den Code ein, um die Umgebung zu ermitteln
    • Beispiel für Rails 3-Code
       wenn Rails.env == 'Entwicklung' || Rails.env == 'test' 
       Rails.application.config.middleware.use OmniAuth :: Builder do 
       Anbieter: facebook, 'DEV_APP_ID', 'DEV_APP_SECRET' 
       Ende 
       sonst 
       # Produktion 
       Rails.application.config.middleware.use OmniAuth :: Builder do 
       Anbieter: Facebook, 'PRODUCTION_APP_ID', 'PRODUCTION_APP_SECRET' 
       Ende 
       Ende 
      

Ich bevorzuge diese Methode, weil Kollegen und andere Maschinen nach der Einrichtung keine zusätzlichen Einstellungen benötigen.

241
Eric Hu

Natürlich können Sie einfach die URL localhost (ohne "http") in Ihre app_domain einfügen und dann Ihren site_url http://localhost (mit http) hinzufügen.

Update

Facebook ändert die Dinge jetzt ein wenig, gehen Sie einfach zu den App-Einstellungen und fügen Sie in der Site-URL http: //localhost hinzu und lassen Sie die App-Domain leer

25
stalin

Hier ist meine Konfiguration und es funktioniert gut für PHP API:

app-Domain

   http://localhost

Seiten-URL

   http://localhost:8082/
19
tradmed

HINWEIS: Ab 2012 erlaubt Facebook die Registrierung von "localhost" als Rückgabe-URL. Möglicherweise benötigen Sie eine ähnliche Problemumgehung für andere Anbieter (z. B. Microsoft).

Wenn Sie einen echten bei Facebook registrierten Domainnamen (wie my.really.own.domain.com) benötigen, können Sie Anfragen an diese Domain lokal an Ihren Computer umleiten. Der einfachste Ansatz für jedes Betriebssystem ist das Ändern der "hosts" -Datei, um die Domäne auf 127.0.0.1 zuzuordnen (siehe http://technet.Microsoft.com/en-us/library/bb727005.aspx#EDAA . und https://serverfault.com/questions/118290/cname-record-alias-in-windows-hosts-file ).

Normalerweise verwende ich Fiddler für mich (unter Windows mit lokalem IIS) - siehe Beispiele unter http://www.fiddler2.com/Fiddler/Dev/ScriptSamples.asp

if (oSession.HostnameIs("my.really.own.domain.com")) {
   oSession.Host="localhost:80";
}

Die Herangehensweise von Ansätzen für Ansätze funktioniert nicht mit Visual Studio Development Server, da eingehende URLs localhost/127.0.0.1 sein müssen. Wenn Sie damit arbeiten müssen (oder möglicherweise mit IIS express), um Host - Fiddler mit IIS7 Express zu überschreiben

19
Alexei Levenkov

Facebook hat keine "localhost" Callback-URL mehr für FBML-Facebook-Anwendungen zugelassen

9
Sudantha

Mit dem neuen Entwicklungszentrum ist es jetzt einfacher: 

1) Lassen Sie App-Domains leer. 
2) Klicken Sie auf Plattform hinzufügen
3) Die Site-URL sollte dem vollständigen Pfad Ihres lokalen Hosts entsprechen.
4) Änderungen speichern

9
JSV

Ich habe gerade eine Problemumgehung entdeckt: Sie können Ihren lokalen Computer mit http://localtunnel.com zugänglich machen. Sie müssen einige der in Ihrem App-Code/html verwendeten URLs (vorübergehend) ändern, sodass Links auf die temporäre Domäne verweisen, aber Facebook kann Ihren Computer zumindest erreichen.

8
M.G.Palmer

In den Grundeinstellungen Ihrer App ( https://developers.facebook.com/apps ) Unter Einstellungen-> Basis-> Wählen Sie aus, wie Ihre App in Facebook integriert werden soll ...

Verwenden Sie "Site URL:" und "Mobile Site URL:", um Ihre Produktions- bzw. Entwicklungs-URLs zu speichern. Beide Sites können sich authentifizieren. Ich verwende nur Facebook zur Authentifizierung, daher brauche ich keine Funktionen zur Umleitung mobiler Websites. Normalerweise ändere ich die "Mobile Site URL:" in meine "localhost: 12345" -Site, während ich die Authentifizierung teste, und setze sie anschließend wieder auf "Normal".

7
Carter Medlin

Es gibt ! Meine Lösung funktioniert, wenn Sie eine App erstellen, die Facebook-Authentifizierung jedoch auf Ihrer Website verwendet werden soll. Diese Lösung ist NICHT erforderlich, wenn Sie eine in die FB-Seite integrierte App erstellen möchten.

Die Sache ist, dass Sie "localhost" nicht als Domain in die Facebook-Konfigurationsseite Ihrer App einfügen können. Sicherheits Gründe ? 

Sie müssen zu Ihrer Host-Datei in OSX/Linux etc/hosts gehen und die folgende Zeile hinzufügen: 127.0.0.1 dev.ihredomain.com

Die Domain, die Sie setzen, was Sie wollen. Ein Fehler ist das Hinzufügen dieser Zeile: Localhost dev.yourdomain.com (zumindest bei osx snow leopard funktioniert dies nicht).

Dann müssen Sie Ihren DNS-Cache leeren. Unter OSX: Geben Sie dscacheutil -flushcache in das Terminal ein. Gehen Sie schließlich zurück zur Online-Entwickler-Website von Facebook. In der Konfigurationsseite Ihrer App können Sie die Domäne "dev.ihredomain.com" hinzufügen .

Wenn Sie ein Programm wie Mamp, Easyphp oder ähnliches verwenden, stellen Sie sicher, dass der Port für Apache 80 ist. 

Diese Lösung sollte für Windows funktionieren, da sie auch über eine hosts-Datei verfügt. Soweit ich mich erinnere, verwendet Windows 7 diese Datei nicht mehr, aber dieser Trick sollte funktionieren, wenn Sie einen Weg finden, Windows dazu zu zwingen, eine hosts-Datei zu verwenden.

5
MartinL

Sie müssen das Facebook-Produkt "facebook login" auswählen und .__ aktivieren. Client OAuth Login, "Web OAuth Login" und "Embedded Browser OAuth Login" Auch wenn Sie localhost url angeben, wird es funktionieren  enter image description here

5

Versuche dies ---

https://www.facebook.com/help/community/question/?id=589302607826562

1 - Klicken Sie auf Apps und wählen Sie Ihre App aus.

2 - Klicken Sie auf die Schaltfläche Einstellungen auf der linken Seite des Bildschirms.

3 - Klicken Sie in den Grundeinstellungen unter der Konfigurationseinstellung Auf die Schaltfläche Plattform hinzufügen.

4 - Wählen Sie im Plattformdialogfeld Website aus.

5 - Geben Sie Ihre URL ein (localhost funktioniert hier).

6 - Fügen Sie in der Texteingabe der App Domains Ihre Domain hinzu, die der URL in der URL entspricht.

7 - Speichern Sie Ihre Einstellungen.

3
Snm Maurya

Ich denke, Sie sollten in der Lage sein, Anwendungen mit dem Visual Studio Development-Webserver zu entwickeln: Starten Sie eine neue FaceBook-Anwendung unter: http://www.facebook.com/developers/ . Legen Sie dann die Einstellungen für die Site-URL und die Canvas-URL auf die ausgeführte Instanz Ihrer Website fest, z. B. http: // localhost: 1062 /

Hier sind ein paar Links, die Ihnen helfen sollten, mit FaceBook zu beginnen: 

  1. http://thinkdiff.net/facebook/graph-api-iframe-base-facebook-application-development/
  2. http://nagbaba.blogspot.com/2010/05/experiencing-facebook-javascript-sdk.html
  3. http://apps.facebook.com/thinkdiffdemo/

Hoffe das hilft.

3
Vasile Laur

Angenommen, Sie haben Ihre App als registriert:

app.domain.com

Sie müssen lediglich die Datei/etc/hosts durch Hinzufügen ändern

127.0.0.1 dev01.app.domain.com

Ändern Sie dann Ihre Apache-Konfiguration

ServerName dev01.app.domain.com

und starten Sie Apache neu.

Sie müssen Ihre URL in eine Variable einfügen, um sie bei einigen Aufrufen als XML-Parameter verwenden zu können:

<fb:login-button registration-url="http://<?=$URL?>/register" />

Ich habe nicht genug Kredit, um die am besten gewählte Antwort zu kommentieren, aber zumindest in meiner Rails-Umgebung (Lauf 4) ist Rails s bei http://localhost:3000 und nicht bei http://www.localhost:3000. Als ich es in http://localhost:3000 änderte, funktionierte es einwandfrei. Sie müssen keine Hosts-Datei bearbeiten. 

2

dies funktioniert im Juni 2018, auch nach der HTTPS-Anforderung. Es scheint, dass eine Test-App kein https benötigt:

erstellen Sie eine Test-App: https://developers.facebook.com/docs/apps/test-apps/

befolgen Sie anschließend in der Test-App die einfachen Schritte dieses Videos: https://www.youtube.com/watch?v=7DuRvf7Jtkg

1
Ja Austin

Versuche dies:

https://ngrok.com/

Es hat für mich gearbeitet ...

1
Surender Lohia

Gehen Sie einfach zum App-Dashboard unter den Facebook-Login-Registerkarteneinstellungen Wählen Sie dann HTTP erzwingen aus. Nein, Einstellungen speichern enter image description here

0
Jerome Blacq

app domain : localhost

site URL : http://localhost:4440/

arbeitete für mich mit der neuen Benutzeroberfläche.

0
sftsz

Meine Lösung funktioniert gut in localhost ......__ Für Site URLS verwenden Sie http://localhost/ Und für App-Domains localhost/folder_nameRest Seine Shows redflag in App Domain..App funktioniert einwandfrei)

0
fab

Letztes Update: Sie müssen keine URLs angeben, wenn Sie es in der Entwicklung testen. Sie können die Felder leer lassen. Stellen Sie sicher, dass sich Ihre App im Entwicklungsmodus befindet. Wenn nicht, deaktivieren Sie den Status von Live.

Es ist nicht erforderlich, eine Website-URL, App-Domains oder eine gültige Weiterleitungs-URL anzugeben.

 enter image description here 

Die Anwendung wird in localhost problemlos ausgeführt: 3000, Sie müssen lediglich die https-Adresse angeben, unter der die Anwendung aktiv sein soll, wenn sie sich im Produktionsmodus befindet.
Option 2 bietet die URL oder Ihre Heroku-Website, auf der Sie eine Beispielanwendung im Produktionsmodus haben können.

 enter image description here

0
vidur punj