Freitag, 20. September 2013

Facebook Posts mit C# veröffentlichen

In diesem Post möchte ich zeigen, wie man mit einer C# Anwendung einen Facebook Post auf der eigenen oder einer fremden (natürlich nur, wenn dies erlaubt ist) Pinnwand erstellt.

Hierfür legen wir uns im Entwickler - App Bereich zuerst eine neue App an. Dann besorgen wir uns hierfür ein Access Token und setzen als Berechtigung publish_action, woraufhin wir uns anmelden müssen. (Hinweis: Siehe diesen neuen Posts bezüglich Access Tokens, da Facebook die Gültigkeit dieser deutlich verkürzt hat.)
Die App merkt sich dann quasi unseren Account, beim Ausführen greift sie darauf zu und wir können alles im Rahmen unseres Accounts und der verteilen Berechtigungen durchführen. Die Berechtigung publish_action gibt an, dass die Anwendung Beiträge u.ä. veröffentlichen darf.
Zum Veröffentlichen müssen wir hier die HTTP POST Methode verwenden. Die Adresse, an welche wir die Anweisung schicken, lautet https://graph.facebook.com/benutzerkennung/feed/.
Benutzerkennung muss dabei durch eine Kennung des Benutzers ersetzt werden, wie z.B. ID oder eindeutiger Name. me ist außerdem ein Kürzel für den eigenen Account.
Möchten wir nun einen Beitrag posten, müssen wir das Access Token nach dem Parameter access_token sowie den Inhalt des Posts nach dem Parameter message an den Server schicken und dann eine POST Anfrage starten.

Folgender Beispielcode schreibt den Text "Hallo Welt" auf die eigene Pinnwand:
            string URL;
            URL = "https://graph.facebook.com/me/feed/";

            WebRequest MyRequest;
            MyRequest = WebRequest.Create(URL);
            MyRequest.Method = "POST";

            Stream DataStream = MyRequest.GetRequestStream();
            Byte[] Data = Encoding.UTF8.GetBytes("access_token=xyz123&message=Hallo Welt");
            DataStream.Write(Data, 0, Data.Length);
            DataStream.Close();

            MyRequest.GetResponse();

Keine Kommentare:

Kommentar veröffentlichen