Facebook graph api Facebook API通过安装相同的应用程序获取共享好友喜欢的内容

Facebook graph api Facebook API通过安装相同的应用程序获取共享好友喜欢的内容,facebook-graph-api,Facebook Graph Api,我需要以某种方式获得使用同一应用程序的朋友之间共享的喜好,一些FQL最终会返回给我最常见的喜好列表,这可能吗 谢谢。我已经看过了,要根据可索引用户id字段获得当前用户的喜好,您需要当前用户的用户访问令牌 这基本上意味着,只有应用程序的当前用户在特定时间可以根据他们的喜好查询信息。下面的查询可能适合您。请注意,您需要“读取流”权限 select object_id, user_id,object_type FROM like WHERE object_id in(SELECT object_id

我需要以某种方式获得使用同一应用程序的朋友之间共享的喜好,一些FQL最终会返回给我最常见的喜好列表,这可能吗


谢谢。

我已经看过了,要根据可索引用户id字段获得当前用户的喜好,您需要当前用户的用户访问令牌

这基本上意味着,只有应用程序的当前用户在特定时间可以根据他们的喜好查询信息。下面的查询可能适合您。请注意,您需要“读取流”权限

select object_id, user_id,object_type FROM like WHERE object_id in(SELECT object_id FROM like WHERE user_id =me()) and user_id in(select uid FROM user WHERE uid in(SELECT uid2 FROM friend where uid1 = me()) and is_app_user='true')
你可以在

https://developers.facebook.com/tools/explorer/433871385166/?fql=select%20object_id%2C%20user_id%2Cobject_type%20FROM%20like%20WHERE%20object_id%20in(SELECT%20object_id%20FROM%20like%20WHERE%20user_id%20%3Dme())%20and%20user_id%20in(select%20uid%20FROM%20user%20WHERE%20uid%20in(SELECT%20uid2%20FROM%20friend%20where%20uid1%20%3D%20me())%20and%20is_app_user%3D'true')
然后,您很可能需要使用一些服务器端代码来分析返回的数据,以统计最流行的数据。可能通过创建一个数组,在数据中循环,根据object_id检查数组中是否有键,如果没有,则将该键添加到值为1的数组中,其中1是计数,否则将该值增加1

伪代码示例

  $data; // This would be what was returned from your FQL query
  $compare = array();
  foreach($data as $value){
    if(array_key_exists($value['object_id'],$compare)){
       $compare['object_id'] = $value['object_id'] + 1;
    }else{
       $compare['object_id'] = 1;
    }
  }
  // Do some sorting function to compare the counts.
  //you would then probably need to batch queries to get the name/title of the object that the user has liked

我希望这为您提供了一个良好的起点

我可以获得安装了相同应用程序的用户,因此我需要如何加入此列表用户以获得共享的喜好:从用户中选择uid,其中uid在朋友中选择uid2,其中uid1=我,is_app_user=1