列出喜欢页面或网址的用户

时间:2012-07-11 14:45:29

标签: facebook facebook-graph-api facebook-like

我需要列出喜欢特定网址或至少是facebook页面的用户

我尝试使用PHP和https://api.facebook.com/method/fql.query

我可以看到网址的喜欢者数量

$arr[1]['url'] = 'http://example.com/test/test3.php?ref=gametest&fb_ref=gametest&fb_source=gametest';
$arr[1]['object_id'] = '10150930574980642';

require_once("facebook.php");
$facebook = new Facebook(array(
    'appId'  => '325617367526193',
    'secret' => '6c40e01dd717431c9b7ec6ce68bf0c94',
));

我使用http://developers.facebook.com/docs/reference/fql/like/示例来形成类似的查询

$query = <<<FQL
    SELECT user_id FROM like WHERE object_id="10150930574980642"
FQL;
$fql_query_url = 'https://graph.facebook.com/fql?q=' . rawurlencode ( $query );
$fql_query_url .= '&access_token=' . rawurlencode ( $facebook->getAccessToken() );

但结果链接根本没有提供数据

{
   "data": [

   ]
}

通过带或不带access_token

的链接获得相同的结果
api.facebook.com/method/fql.query?query=SELECT%20user_id%20FROM%20like%20WHERE%20object_id%3D%2210150930574980642%22

1 个答案:

答案 0 :(得分:1)

“喜欢”表格仅返回喜欢以下对象(视频,笔记,链接,照片或相册)的用户的ID。

您无法找到喜欢特定网页的用户ID,只能找到该网页内的对象。

e.g。喜欢Facebook页面上的专辑(SELECT user_id FROM,如WHERE object_id =“10150146071791729”&amp; access_token = [access_token])

如果您想获得喜欢特定链接的用户,您需要首先获取此链接的object_id:

https://api.facebook.com/method/fql.query?query=SELECT url,site,id FROM object_url WHERE url IN ('http://developers.facebook.com')

这将返回链接http://developers.facebook.com的object_id。