1

我有一個名爲example.com的網站,有幾個喜歡的內部頁面。用戶驗證FB應用程序後,如何獲得來自特定域的所有喜歡?

我創建了一個FB應用程序。

當用戶認證FB應用程序,我想獲取所有用戶喜歡,如:example.com/page1,example.com/page2等

(單個用戶最多可以有100 +喜歡在example.com的內部頁面)我基本上想要得到所有經過認證的用戶在我的example.com網站上製作的所有喜歡的URL(和關聯的FB圖形ID)。

有沒有辦法做到這一點?

也許通過facebook.api調用?或者可能是一個FQL查詢?我對PHP或JS開放。

請幫忙!謝謝。

... fyi,我最初的想法是爲每個用戶提取他們所有的喜好,通過每個用戶解析,確保它來自example.com,然後將這些URL存儲到本地數據庫中。當用戶重新訪問該網站時,我會查詢我的數據庫中與該用戶關聯的喜好。這似乎並不是最有效的,因爲它需要存儲我的網站上有史以來所有的喜好。任何幫助將非常感激。

回答

1

如果您只是想在用戶喜歡網站上的頁面時存儲,那麼爲什麼不使用Facebook JS SDK提供的edge.createedge.remove事件?例如:

FB.Event.subscribe('edge.create', function(targetUrl, elm) { 
    // Make a request to server to save 'Like' information 
}); 

FB.Event.subscribe('edge.remove', function(targetUrl, elm) { 
    // Make a request to server to remove 'Like' information 
}); 
+0

謝謝導航。這將起作用,除了'喜歡'的行爲發生在我無法訪問的不同域上。然而,我確實可以訪問example.com,我計劃獲取其他域的所有'喜歡'。任何其他的想法? – Rees 2012-01-05 20:46:47

0

我在類似插件的屬性中看到,ref屬性可能是您可以用來確定從哪裏來的。當然你的href屬性需要在類似按鈕的所有位置都是相同的。

或者,您可以註冊您的網站與Facebook的見解和追蹤它。請參閱https://www.facebook.com/insights/

0

用戶API參考這裏:https://developers.facebook.com/docs/reference/api/user/

這裏是你如何通過JS API讓所有喜歡的(除非他們超過一頁,他們你喜歡的一個子集):

FB.api('/me/likes', function(response) { 
    console.log(response); 
}); 

您需要登錄,並且您需要user_likes權限。

相關問題