22 Stimmen

Omniauth Facebook-Authentifizierung auf localhost

Ich versuche, Omniauth wie hier beschrieben einzurichten Eisenbahnsendung . Während es mit Twitter funktioniert, gelingt es mir nicht, es mit Facebook zum Laufen zu bringen. Ich habe auch die Option ' http://localhost:3000 ' als Siteurl und 'localhost' als Domain, aber es wird immer noch die folgende Fehlermeldung im Browser angezeigt:

Invalid redirect_uri: Given URL is not allowed by the Application configuration.

Hat jemand von Ihnen einen Vorschlag, wie man das Problem beheben kann? Vielen Dank im Voraus.

32voto

Chrisjschmitt Punkte 336

Schauen Sie sich die Umleitung in der URI an. Bei mir stand localhost:3000, also habe ich die Site-URL in "http://localhost:3000/" geändert, und es hat funktioniert.

28voto

Monica Punkte 281

Bei mir hat das folgendermaßen funktioniert.

Momentan erlaubt Facebook nicht, die Site-Domain auf eine IP-Adresse zu setzen, daher ist es nicht möglich, die Site-URL auf http://127.0.0.1:3000/ denn dann beschwert sich Facebook, dass die URL nicht mit der Domäne übereinstimmt.

Stellen Sie also in Ihrer Facebook-App die:

Site URL: http://localhost:3000/
Domain: localhost

Wenn Sie auf die Anwendung auf Ihrem Entwicklungsrechner zugreifen, stellen Sie sicher, dass Sie localhost:3000 in den Browser eingeben. Wenn Sie 127.0.0.1:3000 verwenden, verwendet OmniAuth diese Adresse in der Callback-URL, die es an Facebook sendet, und Facebook gibt dann den von Ryan oben erwähnten Fehler aus.

15voto

Josh Crews Punkte 773

Ich wechsle zu http://lvh.me:3000 in meinem lokalen Browser, um Facebook lokal zu testen. Legen Sie dann in den Einstellungen der Facebook-App lvh.me als Ihre Domain fest.

lvh.me ist eine registrierte Domäne, die auf 127.0.0.1 zeigt und die ein Entwickler gekauft hat, um Subdomänen lokal zu testen.

7voto

monocle Punkte 5856

Versuchen Sie es mit

http://0.0.0.0:3000/

für die "Website-URL". Das funktioniert bei mir. (Außerdem habe ich im Feld "Site Domain" nichts eingegeben).

0voto

Gonzalo S Punkte 862

Wenn Sie unter OSX arbeiten, können Sie pow http://pow.cx/ um localhost umzubenennen in

http://yourapp-dev  

(wird nicht wirklich umbenannt, sondern hinzugefügt)

können Sie dies als gültigen Domänennamen auf Facebook festlegen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X