facebook graph评论过滤器和摘要

时间:2013-04-19 15:16:12

标签: json facebook facebook-graph-api

我正在尝试仅从Facebook图表中检索给定帖子的计数或所有评论(包括回复)的顶级评论。

有没有人在评论图调用上获得Facebook图形注释过滤器或摘要字段?它在文档https://developers.facebook.com/docs/graphapi/guides/comments/中说,您可以在图表网址中添加?filter = stream和or?summary = true,以在返回的评论集合中包含评论回复和/或摘要信息(计数)。

一个假设的例子是:对于公共提要Facebook会告诉你一篇帖子有100条评论而且这个数字包含回复,当你真正检索到评论时你可能只回到80,因为图表只返回顶级评论而不是评论和他们的回复。

真实的例子

graph.facebook.com/10151579052696276/comments/

从帖子中获取所有前25个评论(使用object_id)但不包括回复。它只返回顶级评论。这是一个问题,因为Facebook返回的帖子评论数量与它返回的评论数量不匹配。如果你尝试发表评论分页你的搞砸了,因为它不一致。

要解决此问题,我尝试添加过滤器流和摘要

graph.facebook.com/10151579052696276/comments/?filter=stream&summary=true

返回完全相同的JSON。

我尝试过包含用户访问令牌(包含所有权限)和应用令牌

在图表浏览器https://developers.facebook.com/tools/explorer/

中自行尝试

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:2)

您的请求网址错误 删除" /"在"评论"

之后

url应该是这样的; graph.facebook.com/10151579052696276/comments?filter=stream&summary=true

答案 1 :(得分:1)

我不确定我是否完全理解这个问题,但您是否在寻找特定帖子的Facebook评论总数?如果是这样,这有效:

https://graph.facebook.com/POST_ID/comments?summary=true&access_token=XXX

在所有评论ID,评论喜欢等之后,应该有这个摘要:

摘要:{ 顺序:“按时间顺序”, total_count:NUMBER }

答案 2 :(得分:1)

这是你的答案:

<强>&GT;&GT;对于评论计数及其回复: https://graph.facebook.com/80329313253_10153617216088254/comments?filter=stream&summary=true&access_token=yourtoken

<强>&GT;&GT;对于没有回复的评论计数: https://graph.facebook.com/80329313253_10153617216088254/comments?filter=toplevel&summary=true&access_token=yourtoken

注意:上面的网址返回一个有两个成员的json对象(数据数组:它会显示评论数据摘要对象 :这将包括显示total_counts的字段)

我花了很长时间才弄清楚摘要是在所有注释数组之后显示的。希望这能回答你的问题。

答案 3 :(得分:0)

它返回相同的json,因为您请求注释列表。 如果您只想要摘要,则必须避免使用limit-parameter进行任何分页。试试这个: graph.facebook.com/10151579052696276/comments/?filter=stream&summary=true&limit=0

php中的

使用了这种语法: $ URL = “http://graph.facebook.com/?fields=og_object{comments.limit(0).summary(total_count)&10151579052696276”; $ FB_Request = file_get_contents($ url);