我製作一個頁面標籤應用程序。應用程序顯示一些項目,每個項目都有一個類似的按鈕。像連接到相應url項目的按鈕一樣。我需要向喜歡的用戶展示,這些元素中收集了10個以上喜歡的文字。 所以,我寫這樣的代碼:我如何知道當前用戶喜歡對應的鏈接?
// Get a link statistics
$link_stat = $fb->api(
array(
'method' => 'fql.query',
'query' => 'SELECT like_count FROM link_stat WHERE url="http://myurl.com/item1.html"'
)
);
if ((int)$link_stat[0]['like_count'] > 10)
{
//Get like by current user_id and link object_id
$like = $fb->api(
array(
'method' => 'fql.query',
'query' => 'SELECT user_id, object_id FROM like WHERE user_id=me() AND object_id IN (SELECT id FROM object_url WHERE url="http://myurl.com/item1.html")'
)
);
var_dump($like);
}
我在請求允許運行這段代碼* user_likes *和* read_stream *,但它輸出array(0) { }
。 問題是,我怎麼知道當前用戶喜歡對應的鏈接?
所以,有一個問題:我喜歡一些項目,但它們不出現在我的喜好列表中。所有鏈接都是外部和公開的。 – bibimij
這總是一個問題。 FQL對返回的內容有限制,Facebook並不總是告訴你這些限制是什麼。你可以嘗試在你的內部查詢中加入LIMIT 99999,但是YMMV。您也可以嘗試通過Graph API方法而不是FQL來請求。再次YMMV。 – cpilko
這些查詢的侷限性似乎是Facebook內的一項「功能」。他們似乎有意地將「類似」表返回給第三方應用程序的數據量專門用來阻止人們阻止類似按鈕後面的內容。 – cpilko