meine feeds von facebook auf meine Webseite, mit javascript-api?
Ich versuche, zu bekommen alle das Futter von meiner facebook-Seite mit der javascript-api.
Hat jemand ein funktionierendes Beispiel?
Ich habe tryed aber ich kann nicht get it right, ich kann Fotos aus den Alben, aber ich kann nicht die feeds, und ich weiß nicht was ich falsch mache.
Jede Eingabe sehr geschätzt. Danke!
Habe ich diesen code:
Bearbeiten
OK, ich habe den code in der init-code wie unten und es funktioniert nicht, es ist nicht die Ausführung des Codes und ich bekomme keine Fehler:
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '<%=facebookAppId%>', //App ID
channelUrl : 'www.mypage.se/channel.html', //Channel File
status : true, //check login status
cookie : true, //enable cookies to allow the server to access the session
xfbml : true, //parse XFBML
oauth : true
});
//get the wall - feed
var page_id = '<%=facebookPageId%>';
FB.api('/' + page_id, {fields: 'access_token'}, function(resp2) {
if(resp2.access_token) {
alert(resp2.access_token);
FB.api('/page id/feed?access_token='+resp2.access_token, function(response) {
var ul = document.getElementById('feed');
for (var i=0, l=response.data.length; i<l; i++) {
var
feed = response.data[i],
li = document.createElement('li'),
a = document.createElement('a');
a.innerHTML = feed.message;
a.href = feed.link;
li.appendChild(a);
ul.appendChild(li);
}
});
}
});
};//end window.fbAsyncInit
//Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
-
So, warum kann ich zum Beispiel:
FB.api('/facebook-id', function(response) {
alert('Ihr name ist' + response.name);
});
innerhalb der init-code und nicht die anderen code? -
Ich würde noch etwas Struktur helfen, schreiben die Rückrufe auf die Seite, so dass es gut aussieht, wie auf facebook.
Ich mag zu schreiben "- Meldung, Bild, link, Namen" und vielleicht etwas anderes? -
Als ich test, um die Nachrichten in diesem Beispiel, und einige der callback wird angezeigt als "undefined" auf der Seite? Bedeutet das, dass die Nachricht nicht über einen Wert, wenn ich es bekommen?
Wenn ja, wie kann ich nicht schreiben, emty Werte - nicht definiert?
Dank!
UPDATE:
Wenn ich diesen code verwenden, dann liest es das Futter, aber nur wenn ich angemeldet bei Facebook?
Im beginnend, zu verwirrt, da ich denke, dass der obige code sollte funktionieren:
Ich Frage mich zuerst für das access-token bei der ersten Aufforderung, und wenn ich den access-token, dann werden Sie es in den zweiten Anruf, was ich ich falsch mache?
FB.api('/my userid or pageid/feed?access_token=the acces token that I get from the Graph API Explorer', {limit:5} , function(response){
if (response && response.data && response.data.length){
alert(response.message);
var ul = document.getElementById('feed');
for (var j=0; j<response.data.length; j++){
var feed = response.data[j],
li = document.createElement('li'),
a = document.createElement('a');
a.innerHTML = feed.message;
a.href = feed.link;
li.appendChild(a);
ul.appendChild(li);
}
}
});
- Ich bekomme ein paar Undefinierte Antworten, wie kann ich schreiben Sie nicht auf die Seite?
- Wie bekomme ich den oben genannten code zu arbeiten, selbst wenn der Benutzer, der Besuche die Webseite ist nicht angemeldet bei facebook?
- Ich andere Aufrufe, bekommt die Fotos in einem album kein problem die Anzeige auf der Webseite, ich verstehe nicht, warum dies anders ist?
- Wenn ich will für einen Kunden(wenn fertig) was sind die Schritte, die ich nehmen muss? Immer ein bisschen verwirrt... 🙂
- Ich möchte die Nachricht bekommen, Bild, Vorlieben usw. mit der Aufforderung
und display, wie es ist auf dem feed-Wand, irgendwelche Vorschläge hier?
Ok, endlich habe ich es geschafft habe 🙂
Ich habe das Recht acces token und jetzt kann ich die Anzeige der feeds.
Ich habe das Recht token hier:
https://graph.facebook.com/oauth/access_token?client_id=myapp_id&client_secret=myapp_secret&grant_type=client_credentials
Und jetzt kann ich mit dem untenstehenden code sowohl für die erste Benutzer-feeds und Seiten feeds, ändern Sie einfach die page_id!
var page_id = '<%=facebookPageId%>';
var pageaccessToken='xxxxxxxxxxxxxxxxxxxxxxxxxx';
FB.api('/' + page_id + '/feed?access_token='+ pageaccessToken, {limit:5} , function(response){
if (response && response.data && response.data.length){
var ul = document.getElementById('pagefeed');
for (var j=0; j<response.data.length; j++){
var feed = response.data[j],
li = document.createElement('li'),
a = document.createElement('a');
a.innerHTML = feed.message;
a.href = feed.link;
li.appendChild(a);
ul.appendChild(li);
}
}
});
Ok, jetzt funktioniert es, aber ich bekomme undefiniert in der Antwort?
Was ist die Ursache, ist es, weil es einen leeren Wert, dass ich in der Antwort?
Was kann ich tun, damit es nicht auf der Seite angezeigt?
Haben Sie das "read_stream" Erlaubnis?
Ja ich habe alle Berechtigungen.
InformationsquelleAutor Claes Gustavsson | 2012-03-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich verstehe nicht, was es ist Sie versuchen zu tun, ich habe das Gefühl aber, dass Sie nahm den falschen Weg..
Beginnen wir mit der Tatsache, dass Sie brauchen keine spezielle Erlaubnis oder eine Seite Zugangs-token-Abfrage für die Seite füttern, es ist öffentlich-und damit alles, was Sie brauchen ( zitiert aus der Dokumentation ): "jede gültige access_token oder Benutzer access_token".
Das bedeutet, dass, wenn ein Benutzer, der autorisiert ist, dann erwarb ein Zugriffstoken für ihn und kann jede Seite füttern.
Probieren Sie zum Beispiel die southpark-Seite feed in der Graph API Explorer.
Weiteres Problem ist, dass der Benutzer gefragt wird, für die "manage_pages" Erlaubnis danach zu Fragen, die Grafik-api für das access-token von Ihre eigenen app nicht funktionieren würde. Wenn ein Nutzer einverstanden, dass Ihre app für die Verwaltung seiner Seiten, dass ist genau das, was Sie bekommen werden die Berechtigungen für seine Seiten, und so wurde dieser Wunsch zum Beispiel: /southpark?feilds=access_token nicht bekommen Sie das token, da Sie nicht der admin dieser Seite (auch wenn gewähren Sie der app mit den "manage_pages" Erlaubnis).
Letzte, was ist die Verwendung von Fenster.onload, die in Ihrer situation einfach nicht das problem anzugehen.
Sie wollen nicht der code ausgeführt, wenn das Fenster geladen wird, aber wenn das facebook sdk geladen ist und intialized. Das ist, warum facebook sagt, dass Sie verwenden die fbAsyncInit Veranstaltung.
Der code, den Sie hatte, bevor die Fenster.onload ist die richtige form, was meinst du genau, wenn du sagst "es hat nicht funktioniert"? Hast du irgendwelche Fehler? Es nicht ausgeführt?
Bearbeiten
Aus, was ich verstehe, Sie wollen, um den Inhalt einer facebook Seite - feed in Ihre website.
Wie ich schon sagte, alles, was Sie brauchen, um zu bekommen das Futter von der einen Seite ist ein active access token ("jede gültige access_token oder Benutzer access_token").
Wenn Sie Folgen Sie den Authentifizierung doc, der App-Login-Bereich wirst du sehen, dass Sie können die Ausgabe einer access-token für Ihre facebook-app. Mit diesem token können Sie dann die feed JEDER SEITE Sie wollen auf der server-Seite.
Warten Sie, sind Sie unter Bezugnahme auf einen facebook-Benutzer-Profil? Sie schrieb: "bekommen alle das Futter von meinem facebook-Seite" bedeutet: Page und nicht Benutzer. Ja, welches ist es?
Ok, jetzt habe ich alle Codes im Fenster.fbAsyncInit und, und es funktioniert nicht, keine Anzeige von feed-info und kein Fehler. Es scheint, wie seine nicht ausgeführt.
ok, in diesem Fall möchte ich, dass man die feeds von einer SEITE, aber später möchte ich, um die feeds von ein regulärer Benutzer, wie gut.
Ich Schaffe es, die folgenden und die Anzeige auf einer Webseite ein: name der Seite, die Seite, die Beschreibung, die Fotos, die auf einer Seite, album, name der Seite, die Alben, aber nicht das Futter.
InformationsquelleAutor Nitzan Tomer