Détermination de l'affinité utilisateur pour votre page ou URL Facebook
Pour vérifier si un utilisateur a manifesté son intérêt pour votre page Facebook ou une URL particulière, L'API de Facebook fournit une solution simple. Cependant, il y a eu des cas de confusion et des résultats inattendus.
Prenons un exemple qui a initialement donné des résultats infructueux :
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 :('); } } );
Contrairement aux attentes, ce code a renvoyé un faux drapeau même si l'utilisateur en question avait effectivement exprimé son intérêt (c'est-à-dire qu'il avait aimé la page).
La mise en garde réside dans l'exigence d'une autorisation étendue. Si une telle autorisation n'a pas été accordée, le code ne reflétera pas avec précision l'affinité de l'utilisateur.
Heureusement, il existe une approche alternative qui s'appuie sur OAuth 2.0 pour Canvas et la variable $_REQUEST. En analysant la demande signée, nous pouvons obtenir des informations sur l'utilisateur, y compris son statut d'interaction avec la page :
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; } 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!"; } }
En mettant en œuvre cette méthode, vous pouvez déterminer avec précision si un utilisateur a interagi avec votre page ou votre URL, en fournissant une indication plus fiable de leur préférence.
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!