如何在Facebook Graph API中获取友谊详细信息?

如何在Facebook Graph API中获取友谊详细信息?,facebook,facebook-graph-api,Facebook,Facebook Graph Api,我怎样才能得到两个人的友谊细节?例如,在web中,它将是: http://www.facebook.com/<my_id>?and=<friend_id> http://www.facebook.com/?and= 在Graph API中有什么方法可以做到这一点吗?此外,我可以得到具体的项目,如照片在一起,我们之间的墙上张贴,等等?(AFAIK没有文档记录,但许多Graph API功能无论如何都没有…) 编辑:我认为使用Graph API应该是可行的。例如,获取家庭详

我怎样才能得到两个人的友谊细节?例如,在web中,它将是:

http://www.facebook.com/<my_id>?and=<friend_id>
http://www.facebook.com/?and=
在Graph API中有什么方法可以做到这一点吗?此外,我可以得到具体的项目,如照片在一起,我们之间的墙上张贴,等等?(AFAIK没有文档记录,但许多Graph API功能无论如何都没有…)


编辑:我认为使用Graph API应该是可行的。例如,获取家庭详细信息(兄弟、姐妹、父母等)还没有文档记录,但我仍然可以这样做。

您可以通过执行多个FQL查询来模拟友谊查询。例如,要获取两个朋友A和B之间的所有照片,您可以:

  • 从A获取所有照片(p)
  • 获取p中B的所有标签(查询photo_tags表)
  • 获取B对p的所有评论(在评论表上查询)
  • 重复,这次从B中选择照片


    您可以将相同的概念应用到其他事情上,如帖子、喜欢的内容、视频等。

    是的,我认为您也可以使用图形API而不是FQL来完成相同的事情
    phillee

  • 获取用户的照片
    https://graph.facebook.com/USERID/photos
  • 获取每张照片的标签
    https://graph.facebook.com/PHOTOID/tags
  • 对照片标签列表进行排序,并抓取其中包含朋友的所有照片
  • 获取每张照片的评论
    https://graph.facebook.com/PHOTOID/comments
  • 整理照片评论列表,抓取好友留下的所有评论
  • 正如另一个答案所说:冲洗并重复所有需要的数据
  • https://graph.facebook.com/USERID/feed
  • https://graph.facebook.com/USERID/posts
  • 等等,请参见此处的所有连接:
    http://developers.facebook.com/docs/reference/api/user/
  • 对于兴趣、电影、活动等,只需对两者进行API调用(
    https://graph.facebook.com/ONEUSER/music
    https://graph.facebook.com/OTHERUSER/music
    )并找到两组数据的交集(循环遍历每个列表,并将所有匹配项保存到相互喜欢的单独列表中)

    不过,没有针对友谊的特定API调用,因此您必须构建自己的API。我猜Facebook在他们的友谊页面上就是这么做的:)


    FQL应该和RESTAPI一样简单。。。使用FQL可能更容易,因为您可以添加WHERE条件并仅获取所需的数据(
    SELECT*fromid=FRIENDID
    ),而不是对API返回的大列表进行排序(除非有办法向API请求URL添加条件)。

    如果我理解正确,您想“查看友谊”


    使用Graph API无法直接实现这种类型的查询(目前)。您需要从每个资源端点收集信息,然后自己做一些相关的事情来“查看友谊”

    这就是我一直在使用的:

    
    
    调用main()


    这是在Fb中获取好友列表的完整代码。

    获取两个(或更多)用户被标记的照片:

    SELECT pid, src_big FROM photo 
        WHERE pid IN(
              SELECT pid FROM photo_tag WHERE subject=me()) 
          AND pid IN(
              SELECT pid FROM photo_tag WHERE subject=FRIEND_ID)
          AND pid IN(
              SELECT pid FROM photo_tag WHERE subject=ANOTHER_FRIEND_ID)
          ...
    

    我一直在查看graph api,但在文档中的友谊页面上根本找不到任何内容。[这个问题][1][1]可能重复:是的,它实际上看起来像是一个类似的问题。我们如何决定关闭哪一家?我们能合并吗?你说得对,复制品。我投票决定把我的问题并入这个问题。(需要更多的投票才能真正发生。)我也不被允许投票,所以必须有人投票。有没有非FQL的方法可以做到这一点?使用Graph API,您可以对每个对象的标记和注释进行单独的查询,这可能会非常昂贵。通过FQL,您可以使用子查询,这样您就可以对所需的每种类型的对象运行一个查询。这里有一个注释:这只列出了您的所有好友。:-)