So importieren Sie Facebook-Freunde auf die Website

8

Ich habe eine Website, auf der Benutzer und Benutzer sich gegenseitig als Freunde hinzufügen können. In letzter Zeit habe ich viele Web-Apps gesehen, die eine Funktion haben, mit der Sie Ihre Freunde von Facebook direkt in ihre Web-App importieren können. Wie wird diese Art des Imports der Facebook Freundesliste implementiert?

Ich habe in den Facebook-API-Dokumenten nachgeschaut und kann nichts direkt finden, was darauf hinweist.

Vermutlich würde ich die Facebook-API verwenden, um eine Liste der Freunde des Benutzers zu erstellen. Woher sollte ich dann Benutzer auf meiner Website finden, die Mitglieder dieser Liste sind? Funktioniert diese Art von Schema nur mit anderen Nutzern, die bereits die Facebook-Freundschaftssuche selbst genutzt haben, sodass Sie ein Facebook-Konto an sie binden können?

Es scheint wirklich nicht sehr viel zu diesem Thema zu geben, obwohl ich viele Websites gesehen habe, die es tun, also würde jede Hilfe, egal wie einfach, sehr geschätzt werden.

    
William Jones 27.07.2010, 16:21
quelle

2 Antworten

28

Die Grundlagen dessen, was Sie für dieses Center rund um die Registrierung Ihrer Website als "Facebook-Anwendung" benötigen und verwenden der Graph API .

Schauen Sie sich den Abschnitt "Login with Facebook" auf dieser Seite an. Grundsätzlich, wenn Sie Ihre "Anwendung" registrieren, haben Sie eine Anwendungs-ID und ein "Anwendungsgeheimnis" (das ist nur eine Zeichenfolge von Zeichen, und darf nie veröffentlicht werden oder jemand mit ihr könnte als Ihre Anwendung spoof). Das Beispiel auf der Seite zeigt eine kleine Menge von JavaScript, um die Anwendung von Ihrer Website zu initialisieren, an diesem Punkt können Sie sich für die Facebook-Integration entscheiden.

Direkt darunter befindet sich ein Beispiel für den Button "Mit Facebook einloggen", mit dem Ihre Nutzer angeben möchten, dass sie Ihrer Website Zugriff auf einige ihrer Facebook-Daten gewähren möchten (z. B. die Freundesliste). Sie können die spezifischen Berechtigungen für Ihre Site-Anfragen vom Benutzer innerhalb dieses Login-Tags anpassen, und Ihre Benutzer werden angezeigt mit einer Aufforderung wie dieser ausdrücklich um Erlaubnis fragen, um Ihrer Website den Zugriff auf ihre Facebook-Daten zu ermöglichen.

Zurück auf diese Seite (auch auf anderen Seiten, die Facebook-Dokumentation) ändert sich viel), Scrollen ein wenig weiter unten finden Sie ein einfaches Beispiel (in PHP) für sehr grundlegende Facebook-Integration. Die Beispielseite zeigt dem Benutzer eine Schaltfläche "Mit Facebook anmelden" an und lädt sich nach dem Klicken auf die Schaltfläche neu (durch Abonnieren des richtigen Facebook-API-Ereignisses in JavaScript). Beim erneuten Laden hat der Benutzer ein verschlüsseltes Cookie (vorausgesetzt, der Benutzer hat der Berechtigungsanfrage zugestimmt), das die Beispielseite lesen kann.

Das "Anwendungsgeheimnis" wird verwendet, um den Cookie zu entschlüsseln, der die Facebook-ID des Nutzers und das Zugriffstoken enthält, das Ihre Website autorisiert, Anfragen für die Facebook-Informationen dieses Nutzers zu stellen. Durch die Verwendung des Zugriffstokens in Graph-API-Anfragen erhalten Sie die Berechtigung, die Daten von diesen Anfragen zu empfangen.

Graph-API-Anfragen sind nur GET-Anfragen, die JSON-Daten zurückgeben. Sobald Sie also das Zugriffs-Token (und die Benutzer-ID als Ausgangspunkt) haben, können Sie solche Anfragen überall hin stellen. Sie können clientseitig in JavaScript erstellt werden (zusammen mit Social Plugins und anderen Facebook-Widgets), um die Nutzer "Facebookify" zu machen. Erfahrung auf Ihrer Website, ohne viel, wenn überhaupt, Daten oder Verantwortung für Ihre Website offen zu legen. Oder die Anfragen können über Ihren serverseitigen Code am Backend getätigt werden, um die angeforderten Daten zu speichern und sie so zu verwenden, wie es Ihre Website für geeignet hält (wie die Freundesliste).

Eine API-Anfrage, um eine Liste von Freunden zu erhalten, wäre etwa so:

Ссылка

(Sie würden jedoch me im Pfad durch die Facebook-ID des Benutzers ersetzen, dessen Freunde Sie abrufen möchten, und your_access_token durch das tatsächliche Zugriffstoken ersetzen. Beispiellinks für Ihr eigenes Konto, vorausgesetzt Sie sind bei Facebook angemeldet und können auf diese Seite gefunden werden.)

Die Graph-API erstreckt sich (wie der Name schon sagt) nach außen über das soziale Diagramm der Facebook-Daten. Jedes JSON-Objekt, das mit einem id zurückkommt, kann in seiner eigenen API-Anfrage angefordert werden, um mehr seiner Informationen zu sehen. Alle Informationen, die Sie wünschen, wie die E-Mail-Adressen der Freunde des Benutzers, sind verfügbar wenn und (hoffentlich) nur wenn die Berechtigungen des Benutzers und des Benutzers Freund in Frage erlaubt dies. (Entschuldigung, aber wenn die Freunde des Benutzers ausdrücklich angegeben haben, dass ihre Freunde keinen Zugriff auf diese Informationen gewähren können, ist sie nicht verfügbar.)

Sobald Ihre Nutzer Ihrer Site die angeforderten Berechtigungen zum Anzeigen ihrer Facebook-Daten erteilt haben, können Sie also alle Daten erfassen, auf die Sie Zugriff haben (und auf die Sie zugreifen dürfen), die in der Graph-API verfügbar sind. (Ich hasse es, das Wort "Ernte" dort zu verwenden, aber Sie bekommen die Idee. Handeln Sie verantwortungsvoll, natürlich.) Also Ihr Prozess, aus der Perspektive des Benutzers in jedem gegebenen Fall wäre:

  1. Bitten Sie den Benutzer, sich bei Facebook anzumelden und spezifische Berechtigungen anzufordern.
  2. Erhalte diese Berechtigungen vom Benutzer (andernfalls endet der Prozess hier).
  3. Machen Sie aus Ihrem Servercode Back-End-API-Anfragen, um die relevanten Informationen aus dem sozialen Facebook-Diagramm des Nutzers zu erhalten.
  4. Präsentieren Sie dem Benutzer Optionen, die Sie verstehen können (z. B. E-Mail-Adressen oder sogar Namen mit Benutzern, die Sie bereits haben), seien es Nutzer, die Sie bereits haben (hey, dieser Freund von Ihnen ist auf unserer Website) gerne hallo sagen?) oder lädt zu deiner Seite ein (wir haben keine Aufzeichnungen über deinen Freund, der unsere Seite besucht, klicke hier, um sie einzuladen!), etc.
  5. Der Benutzer interagiert weiterhin mit der Funktionalität, die Ihre Website in dieser Angelegenheit bietet.

Sinn machen? Wie ich bereits erwähnt habe, ändert sich die Dokumentation für all dies auf Facebook sehr (ich habe während des Schreibens mehrere tote Links auf der eigenen Seite gefunden). Ihre programmatischen Schnittstellen ändern sich auch ziemlich oft. Sie entwickeln vielleicht einfachere Möglichkeiten, dies zu tun, aber sobald Sie sich eingerichtet haben und loslegen und die Graph-API-Aufrufe und all das abstrahieren, wird es ziemlich einfach, Ihre Website (s) mit Facebook zu integrieren.

    
David 31.12.2010 19:45
quelle
0

Sie können die Liste der Mitglieder des Freundes, die sich mit Ihrer Facebook-Anmeldung in Ihre Website einloggen, erhalten. JEDOCH werden nur Freunde angezeigt, die ebenfalls auf Ihrer Website registriert sind . (In Facebook Begriff, nur Freunde, die auch die gleiche App verwenden)

Auf der Facebook-Entwickler-Seite können Sie die folgenden Codes abrufen.

Login.php

%Vor%

Fb-callback.php

%Vor%

Unter login.php können Sie die folgende Zeile sehen

%Vor%

Dies fordert den Benutzer zur Erlaubnis auf, auf die Freunde zuzugreifen, die auch die App benutzen.

Dieser Code ruft die Freundesliste aus dem Diagramm ab

%Vor%

Die Codes sind alle Beispiele und dienen nur als Referenz, damit Sie sich ein Bild machen können, was im Backend passiert. Ich empfehle Ihnen, sich Ссылка

anzuschauen

Sollten Sie weitere Fragen zum Ablauf haben, können Sie eine neue Frage stellen, um Ihre Antworten zu erhalten.

Update: Umgang mit user_friends & lt; - das ist wonach Sie suchen

Nach der Anmeldung mit Facebook auf Ihrer Website erhält das eingeloggte Mitglied eine permanente eindeutige ID auf Ihrer Website.

Wenn Sie das user_friends-Diagramm dieses Mitglieds anfordern, gibt Facebook Graph eine Liste mit Benutzerobjekten für Freunde zurück, die diese App ebenfalls verwenden. Und diese Objekte enthalten die Benutzer-ID (die für jede App einzigartig ist). Von der ID aus können Sie Freunde verknüpfen, die sich in Ihrer App kennen.

Ссылка

  

Beispiel Benutzer A (ID: 1234) und Benutzer B (ID: 5678)

     

1) Benutzer Ein Login zu Ihrer Website mit Facebook.

     

2) Sie versuchen, user_friends von Facebook von Benutzer A zu verlangen, aber es   gibt nichts zurück.

     

3) Benutzer B registrieren und loggen sich auf Ihrer Website mit Facebook ein.

     

4) Sie versuchen, user_friends von Benutzer B und Facebook Graphen anzufordern   gibt Benutzer A's ID 1234 zurück.

Von dort können Sie verstehen, dass 5679 und 1234 Freunde sind und Sie können Ihre Datenbank so gestalten, dass Ihre Mitglieder als Freunde assoziiert werden.

    
Someone Special 07.12.2016 04:33
quelle

Tags und Links