Frage

Ich versuche, eine einfache Anwendung zu schreiben, die eine Benutzerberechtigung zu ihrer Seite Facebook-Stream zu schreiben gewähren meinen Code läßt. Wie ich es verstehe, sollte es so einfach wie sein:

  1. Haben Sie den Benutzer klicken Sie auf eine Schaltfläche, dass startet ein Popup die eine Seite in meinem Facebook-App enthält.
  2. In dieser Seite, sie klicken Sie auf etwas, dass Zuschüsse stream_publish meiner App und Abtretungs dass die Erlaubnis zu ihrer Seite.
  3. Fenster schließt, ich habe jetzt alle Informationen, die ich brauche ein Skript in Cron Push Sachen zu dieser Seite Stream auszuführen.

Ich habe seit einigen Tagen das Wiki gelesen. Hinweise zu pyfacebook sind mindestens ein Jahr veraltet, und die Menschen haben wies mich auf die socialauth App für Django, die ebenso veraltet zu sein scheint und konzentriert Nutzer auf ihre Seiten im Gegensatz zu zielen. Ich kann # 1 bis es nicht einmal tun, geschweige denn # 2 und 3

Wenn mir jemand zeigen könnte, wie man Django / Python verwenden Anfrage / Empfangs Erlaubnis Schreiben auf eine Facebook-Stream, dass ein guter Start sein würde.

Jede Hilfe würde sehr geschätzt werden.

War es hilfreich?

Lösung 2

Nach viel gebastelt, ich scheinen alle meine Probleme in Facebookland gelöst haben:

  1. Es stellte sich heraus, dass auf eine Schaltfläche ein Benutzer klicken Sie mit Berechtigungen zu erteilen ist so einfach wie Caio Romão sagte, es sei. aber für meinen Teil fand ich, dass sie auf der Facebook-Desktop-App Link Regie war viel einfacher und zuverlässiger.
  2. über diesen Link Methode, Facebook ermöglicht es Ihnen, enable_profile_selector=1 zu spezifizieren, die dafür sorgen, dass eine Liste der Seiten, aus denen erzeugt wird, kann der Benutzer auswählen, welche Seiten (falls vorhanden) wird diese Berechtigungen erteilen.
  3. Für diese aber Facebook total gebrochen . Während in # 2 sie dem Benutzer ermöglichen, eine Seite wählen Berechtigungen zu erteilen, sie sich nicht über diese Informationen auf die Anwendung entweder durch eine POST oder in den Headern. Es ist einfach nicht da. Stattdessen müssen Sie den Benutzer einen hässlichen Trick mit FQL und einigen zusätzlichen Fragen zu tun, um es Arbeit zu machen.

Wie auch immer, ich es detailliert alle auf meinem Blog , wenn jemand interessiert ist. Vielen Dank für Ihre Hilfe!

Andere Tipps

Haben Sie sich minifb ? Ihre Beispiele zeigt im Grunde alles, was Sie brauchen, um die Genehmigung ersuchen, kennen und erhalten eine Sitzungsschlüssel. (Auch die Github Seite für pyfacebook zeigt, dass die Bibliothek ist noch am Leben)

Also, für Ihr Szenario müssen Sie:

  1. Fordern Sie die "stream_publish" Erlaubnis. Es gibt einige Möglichkeiten , es zu tun, aber ich würde gehen tatsächlich für die am einfachsten: ein Formular einreichen (man beachte ich nie getan habe eine App für Facebook, ich bin wahrscheinlich falsch, diesen Ansatz unter der Annahme ist die einfachste: -)
  2. Verwenden Sie Ihre Anwendung normalerweise. Die API-Methoden aufrufen, die user_id des Benutzers mit der Anwendung zugelassen (Sie werden es zu speichern, haben), und da Sie autorisiert wurden, sollte es nicht scheitern

Für diese grundsätzlich hinzufügen, um dieses Formular auf Ihrer Vorlage:

<form promptpermission="publish_stream">
<input type="submit" value="Allow Publish Stream">
</form>

Ein großes Lob an den Facebook-Entwickler, nebenbei bemerkt. Sehr schöne offizielle Dokumentation.

Bearbeiten : Ich bin nicht äussern darf noch so: Sollten Sie mit Problemen konfrontiert immer die uid, Scheck diese Frage und die Referenzen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top