Maison > interface Web > js tutoriel > Comment puis-je vérifier si un utilisateur de Facebook a aimé ma page à l'aide de l'API ?

Comment puis-je vérifier si un utilisateur de Facebook a aimé ma page à l'aide de l'API ?

Linda Hamilton
Libérer: 2024-11-25 01:14:10
original
421 Les gens l'ont consulté

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

Identifier les likes d'une page Facebook à l'aide de l'API

L'API de Facebook fournit une méthode pour déterminer si un utilisateur a aimé une page ou une URL spécifique. Voici un extrait de code JavaScript qui montre comment utiliser cette fonctionnalité :

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 :(');
        }
    }
);
Copier après la connexion

Bien que ce code semble simple, il ne renvoie pas toujours le résultat attendu. En effet, la méthode « pages.isFan » nécessite que l'utilisateur ait accordé une autorisation étendue pour l'application, ce qui peut ne pas être acceptable dans tous les cas.

Approche alternative utilisant une demande signée

Une approche alternative pour vérifier les pages « J'aime » consiste à utiliser l'option avancée OAuth 2.0 pour Canvas. Lorsqu'il est activé, Facebook inclut un paramètre « signed_request » dans la demande de page. Ce paramètre peut être analysé pour obtenir des informations sur l'utilisateur, notamment s'il a aimé la page.

Voici un exemple de fonction PHP qui analyse la requête signée :

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;
  }
Copier après la connexion

Utiliser ceci fonction, vous pouvez ensuite vérifier la propriété 'page.liked' dans les données renvoyées :

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!";
    }
  }
Copier après la connexion

Cette approche fournit un moyen plus fiable de déterminer la page aime sans nécessiter d’autorisations supplémentaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal