UPDATE:
So beantworten Sie den API-Fehlercode: 191
Der Code redirect_uri
sollte gleich (oder relativ) zur Site-URL sein.
Tipp: Verwenden Sie Basis-URLs anstelle vollständiger URLs, die auf bestimmte Seiten verweisen.
Nicht empfohlen: Zum Beispiel, wenn Sie verwenden , www.mydomain.com/fb/test.html
wie Sie Ihre Website - URL ist und www.mydomain.com/fb/secondPage.html
wie redirect_uri
diese gibt Ihnen die 191 Fehler.
EMPFOHLEN: Stellen Sie stattdessen Ihre Site-URL auf eine Basis-URL wie www.mydomain.com/
OR ein www.mydomain.com/fb/
.
Ich habe heute die Facebook Python-Beispielanwendung durchgesehen und war schockiert , dass klar war, dass Sie sie http://localhost:8080/
als Site-URL verwenden können, wenn Sie lokal entwickeln:
Konfigurieren Sie die Site-URL und verweisen Sie auf Ihren Webserver. Wenn Sie lokal entwickeln, können Sie
http: // localhost: 8080 / verwenden.
Während ich war sicher , dass Sie das nicht tun, basierend auf meiner eigenen Erfahrung (sehr alte Test obwohl) scheint es , dass Sie tatsächlich CAN Ihre Facebook - Anwendung lokal testen!
Also nahm ich eine alte Anwendung von mir und bearbeitete ihren Namen, Site-URL und Canvas-URL: Site-URL: http://localhost:80/fblocal/
Ich habe das neueste Facebook PHP-SDK heruntergeladen und in meinen xampp/htdocs/fblocal/
Ordner geworfen.
Aber ich habe den gleichen Fehler wie bei Ihnen! Ich habe festgestellt, dass XAMPP eine automatische Umleitung zu macht, http://localhost/fblocal/
daher habe ich die Einstellung auf einfach geändert http://localhost/fblocal/
und der Fehler wurde behoben, ABER ich musste die Anwendung (aus den Datenschutzeinstellungen ) entfernen und meine Anwendung neu installieren. Hier sind die Ergebnisse:
Danach bat publish_stream
ich um Erlaubnis und konnte in meinem Profil veröffentlichen (mit dem PHP-SDK):
$user = $facebook->getUser();
if ($user) {
try {
$post = $facebook->api('/me/feed', 'post', array('message'=>'Hello World, from localhost!'));
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
Ergebnisse: