首頁 >web前端 >js教程 >如何使用 API 檢查 Facebook 使用者是否喜歡我的頁面?

如何使用 API 檢查 Facebook 使用者是否喜歡我的頁面?

Linda Hamilton
Linda Hamilton原創
2024-11-25 01:14:10417瀏覽

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

使用 API 識別 Facebook 頁面點讚

Facebook 的 API 提供了一種方法來確定用戶是否喜歡特定頁面或 URL。下面是一個 JavaScript 程式碼片段,示範如何使用此功能:

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 :(');
        }
    }
);

雖然此程式碼看起來很簡單,但它可能不會總是傳回預期結果。這是因為「pages.isFan」方法要求使用者授予應用程式擴充權限,這可能並非在所有情況下都可接受。

使用簽署請求的替代方法

檢查頁面喜歡程度的另一種方法是使用 OAuth 2.0 for Canvas 進階選項。啟用後,Facebook 在頁面請求中包含「signed_request」參數。可以解析此參數以獲取有關用戶的信息,包括他們是否喜歡該頁面。

以下是解析簽章請求的PHP 函數範例:

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;
  }

使用此函數,然後您可以檢查傳回資料中的'page.liked' 屬性:

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!";
    }
  }

這種方法提供了一種更可靠的方法無需額外權限即可確定頁面按讚。

以上是如何使用 API 檢查 Facebook 使用者是否喜歡我的頁面?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn