Heim > Web-Frontend > js-Tutorial > Wie kann ich mithilfe der API überprüfen, ob einem Facebook-Benutzer meine Seite gefallen hat?

Wie kann ich mithilfe der API überprüfen, ob einem Facebook-Benutzer meine Seite gefallen hat?

Linda Hamilton
Freigeben: 2024-11-25 01:14:10
Original
509 Leute haben es durchsucht

How Can I Check if a Facebook User Liked My Page Using the API?

Identifizieren von Facebook-Seiten-Likes mithilfe der API

Facebooks API bietet eine Methode, um festzustellen, ob einem Benutzer eine bestimmte Seite oder URL gefallen hat. Hier ist ein JavaScript-Codeausschnitt, der zeigt, wie diese Funktionalität verwendet wird:

FB.api({
    method:     "pages.isFan",
    page_id:        my_page_id,
},  function(response) {
        console.log(response);
        if(response){
            alert('You Likey');
        } else {
            alert('You not Likey :(');
        }
    }
);
Nach dem Login kopieren

Obwohl dieser Code unkompliziert erscheint, liefert er möglicherweise nicht immer das erwartete Ergebnis. Dies liegt daran, dass die Methode „pages.isFan“ erfordert, dass der Benutzer eine erweiterte Berechtigung für die App erteilt hat, was möglicherweise nicht in allen Fällen akzeptabel ist.

Alternativer Ansatz mit signierter Anfrage

Ein alternativer Ansatz zum Überprüfen von Seiten-Likes ist die Verwendung der erweiterten Option OAuth 2.0 für Canvas. Wenn diese Option aktiviert ist, fügt Facebook einen „signed_request“-Parameter in die Seitenanfrage ein. Dieser Parameter kann analysiert werden, um Informationen über den Benutzer zu erhalten, einschließlich der Frage, ob ihm die Seite gefallen hat.

Hier ist ein Beispiel einer PHP-Funktion, die die signierte Anfrage analysiert:

function parsePageSignedRequest() {
    if (isset($_REQUEST['signed_request'])) {
      $encoded_sig = null;
      $payload = null;
      list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2);
      $sig = base64_decode(strtr($encoded_sig, '-_', '+/'));
      $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true));
      return $data;
    }
    return false;
  }
Nach dem Login kopieren

Verwenden Sie dies Funktion können Sie dann die Eigenschaft „page.liked“ in den zurückgegebenen Daten überprüfen:

if($signed_request = parsePageSignedRequest()) {
    if($signed_request->page->liked) {
      echo "This content is for Fans only!";
    } else {
      echo "Please click on the Like button to view this tab!";
    }
  }
Nach dem Login kopieren

Dieser Ansatz bietet eine zuverlässigere Möglichkeit, die Seite zu bestimmen mag, ohne dass zusätzliche Berechtigungen erforderlich sind.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe der API überprüfen, ob einem Facebook-Benutzer meine Seite gefallen hat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage