Ich verwende ASP.NET und Facebook Connect APIs, aber wenn ich die Anwendung ausführe und auf die Schaltfläche "Connect" drücke, kehrt sie zur Website zurück und nicht zum lokalen Testserver, der ( http://localhost:xxxx/test.aspx ) Wie kann ich Facebook also lokal testen (d.h. wie kann ich die Callback-URL ändern)?
Antworten
Zu viele Anzeigen?Facebook deaktiviert scheinbar willkürlich die Möglichkeit, localhost als Domain in der Facebook-App festzulegen. Ich fand die einfachste Arbeit herum war, meine localhost zum Web zu tunneln. Dies kann kostenlos gemacht werden mit http://progrium.com/localtunnel/ oder mit einer benutzerdefinierten URL (einfacher, da Sie die URL nicht jedes Mal in Facebook ändern müssen) https://showoff.io
Ich konnte die anderen Lösungen nicht verwenden... Was bei mir funktionierte, war die Installation von LocalTunnel.net (https://github.com/danielrmz/localtunnel-net-client) und die anschließende Verwendung der entsprechenden URL auf Facebook.
ZULETZT GEPRÜFT 2021/06/07
Nur einige Anmerkungen zur Ergänzung die ausgezeichnete Antwort von @Erdal_G mit meiner erfolgreichen Erfahrung:
-
Anscheinend wird HTTPS sogar in der lokalen Umgebung benötigt (ich habe die Bibliothek
https-localhost
). -
[Ich weiß nicht, ob dies obligatorisch ist] Erstellen Sie eine Testanwendung aus der Hauptanwendung ( https://developers.facebook.com/docs/development/build-and-test/test-apps/ )
-
Setzen Sie die OAuth-URI für die Umleitung auf
https://localhost:<MY_PORT>/auth/
und aktualisieren auch alle anderen URIs in.../instagram-basic-display/basic-display/
Einstellungen entsprechend. -
Vergessen Sie nicht, in den Anfragen die Client-ID (auch bekannt als App-ID) und das App-Geheimnis der Test-App zu verwenden, die sich von denen der übergeordneten App unterscheiden
Gehen Sie zur Canvas-Seite im Browser anzeigen.. den Text der Adressleiste kopieren. Gehen Sie nun zu Ihrer Facebook-App Gehe zu Einstellungen bearbeiten
in Website, in Site url diese Adresse einfügen
In der Facebook-Integration fügen Sie die Adresse erneut in die Canvas-URL ein.
und denselben Code überall dort, wo Sie eine Canvas-Url oder eine Redirect-Url. benötigen.
Ich hoffe, es hilft
Es sieht so aus, als hätte FB gerade die App-Entwicklungsseite erneut geändert und eine Funktion namens "Server IP Whitelist" hinzugefügt.
- Gehen Sie zu Ihrer Anwendung und wählen Sie Einstellungen -> Registerkarte Erweitert
- Ermitteln Sie Ihre öffentliche IP-Adresse (Google sagt es Ihnen, wenn Sie "Whats My IP" googeln)
- Fügen Sie Ihre öffentliche IP-Adresse zur Server-IP-Whitelist hinzu und klicken Sie unten auf Änderungen speichern