2012-07-31 79 views
0

我是新來的Facebook開發環境,無法弄清楚如何檢測我的網站粉絲頁面的Like狀態。Facebook的JavaScript SDK和Like狀態

我已閱讀How to check if a user likes my Facebook Page or URL using Facebook's APIhttps://developers.facebook.com/docs/reference/api/等資源,無濟於事。

我試圖來檢測是使用JavaScript其中下列條件爲真:

  1. 是我的網站訪問者當前登錄到Facebook? [是] [否]
  2. 如果用戶登錄到Facebook上,有他們喜歡的品牌頁面(Facebook粉絲頁面)[是] [否]

我的邏輯是這樣的:

if ([user is logged into facebook]){ 
// check to see if user is a fan of the page 
var query = FB.Data.query('select page_id from page_fan where uid=me() and page_id ='[PAGE_ID]'); 
query.wait(function(rows)) { 
    if(rows.length) { 
     // User already likes the page 
     echo('Thanks for liking the page!'); 
    } 
    else { 
     // User has not yet liked the page 
     echo('Like us on Facebook!'); 
    } 
}); 

} 

else { 
// User is not logged into Facebook 
echo('Hello, world!'); 

} 

我不清楚在這裏做什麼。我已經閱讀了大量關於這個類似問題的文章,但其中大多數似乎已經過時了,引用了不推薦的FBML和/或REST API。

FWIW,我看到很多需要APPID的參考,但是,我沒有Facebook應用程序。我只是試圖確定我的網站上的用戶是否喜歡我們在Facebook上的關聯品牌/粉絲頁面。

回答

1

FWIW,我看到很多需要APPID的引用,但是,我沒有Facebook應用程序。

然後創建一個。沒有應用程序就無法完成你想要做的事情。

我只是試圖確定我的網站上的用戶是否喜歡我們在Facebook上的關聯品牌/粉絲頁面。

如果您的應用程序將嵌入到Facebook作爲頁面選項卡應用程序,那麼解決signed_request參數服務器端的方法。

如果情況並非如此,或者您想嚴格遵守客戶端JavaScript,那麼您必須先讓用戶連接到您的應用程序,請求他的權限以閱讀他的喜歡,然後從中獲取信息圖表API。