2010-07-27 2 views
6

Ich poste ein paar Informationen an die Wand eines Benutzers über Facebook Connect (von meiner externen Website).Facebook Connect - Graph API vs Old JavaScript SDK (Aktionslinks)

Alles funktioniert gut, aber ich habe einige Unterschiede in der Dokumentation für Wall-Beiträge in der Graph API und dem Old JavaScript SDK bemerkt.

Mit dem Graph API, um es zu einer Wand des Benutzers Sie wie folgt vor:

  • Machen Sie eine HTTP POST-https://graph.facebook.com/ {0}/feed access_token = {1} (wobei 0? = die ID des Benutzers und 1 = das oAuth-Zugriffstoken für diesen Benutzer.
  • Geben Sie in dem HTTP POST die folgenden Parameter in den Daten an: Nachricht, Link, Bild, Name, Beschriftung, Beschreibung, Quelle.

Dies alles auf dieser Seite beschrieben wird: http://developers.facebook.com/docs/reference/api/post

Nun Kontrast dies mit der FB.Connect.streamPublish Methode (alte JavaScript SDK):

Die clientseitige JavaScript-Funktion übernimmt die folgenden Parameter:

  • user_message
  • Befestigungs
  • action_links
  • target_id ist
  • user_message_prompt
  • Rückruf
  • auto_publish
  • actor_id

Dieser Vorgang auf dieser Seite beschrieben: http://developers.facebook.com/docs/reference/oldjavascript/FB.Connect.streamPublish

Nun werden die Operationen im Graph API vs die alte JavaScript-API sind sehr ähnlich, abgesehen von ein wichtiger Parameter - "action_links".

aus dem obigen Link:

Ein Wörterbuch von Aktionsobjekten verknüpft, den Linktext und einen Hyperlink enthält.

Im Wesentlichen können Sie so zusätzliche Links neben den Schaltflächen "Kommentar" und "Gefällt mir" unterhalb der Pinnwand erstellen. Dies ist, was ich tun möchte, d. H. Ich möchte eine andere Schaltfläche namens "Mach etwas auf meiner Website".

Warum kann ich dies nicht mit der Graph API ??? WTF Facebook, warum würden Sie eine neue "RESTful" API erstellen, die nicht die gesamte Funktionalität Ihrer alten API bietet?

Was mich nervt ist, dass das "Feed" -Objekt die Sammlung von "Aktionslinks" in der JSON hat (wenn Sie geneigt waren, diese Information anzufordern).

Aber es ist fast wie Facebook die Fähigkeit entfernt haben, Aktionslinks mit der Graph API zu erstellen. Ist das was passiert?

Fehle ich hier etwas? Ich möchte die Graph-API-Aufrufe wirklich nicht mit der alten JavaScript-API ersetzen müssen.

Bitte helfen!

EDIT:

Gut, gut gut, schauen, was ich gefunden: http://bugs.developers.facebook.com/show_bug.cgi?id=11257

Es scheint, gibt es einen 'Fehler', wo die Facebook Graph API nicht Aktionslinks unterstützt.

Wann wurde die Definition eines "Bugs" zu etwas, das wir ausgelassen haben?

Seufz, zurück zum alten JavaScript SDK.

Facebook, ich verabscheue dich.

+0

http://developers.facebook.com/docs/reference/javascript/FB.ui – klochner

+0

@klocher - ja ich weiß, das ist, was ive verwenden musste (im benutze jedoch die alte javascript api - dein Link ist der neue. – RPM1984

Antwort

3

Es gibt keine "Graph API" Lösung für dieses Problem - wie ein Fehler wurde mit Facebook-Entwicklern eingereicht (siehe meine oben EDIT).

Die einzige aktuelle Lösung besteht darin, zu der alten REST-API oder JavaScript-API zurückzukehren, um das Posting durchzuführen.

Lächerliche Sachen.

4

Facebook hat dies jetzt mit dem Parameter "actions" zur Grafik api hinzugefügt. Siehe diesen Link für die Dokumentation:

Facebook Graph API Post to Feed Method

+0

Ja ich weiß, ich war für den Bug für 3 Monate abonniert, leider haben sie es nicht repariert, bis ich live gehen musste. :) – RPM1984

+0

Gibt es ein Beispiel dafür, wie dies aussehen könnte, wenn es mit dem Javascript-SDK verwendet wird? – tkahn