【问题标题】:Facebook Graph API not returing all comments of postsFacebook Graph API 不返回帖子的所有评论
【发布时间】:2013-04-19 22:36:31
【问题描述】:

您好,我看到 Facebook Graph API 没有为一个页面返回所有帖子的 cmets。它很好地显示了一个页面的所有帖子,但它没有显示每个帖子的所有 cmets。它只显示最后两个 cmets!!。但是对于其他一些页面显示所有 cmets.so 不要为什么某些页面有问题?这是 Facebook 的错误吗?或者如果我错了,请提出建议。我使用了具有 read_stream 权限的应用程序的访问令牌。我不想使用其他权限,因为这是一个安全风险。

请回复

谢谢

【问题讨论】:

  • 增加你的LIMIT值,比如LIMIT=150。 Facebook API 首先根据限制值返回,然后通过一些条件过滤,例如 is_privacy。所以只有两个 cmets 是有意义的。
  • 不,我确实使用过“..feed?limit=150&access_token=..”,但是每个帖子都有很多 cmets,虽然计数值大于 2,但我通过图形 api 看到的仅显示最后 2 个 cmets explorer.limit 实际上是为了限制帖子,我猜不是帖子 cmets。
  • 我明白了。如果您查询 graph.facebook.com/USERID 或 PAGEID/feed?按照设计,只有几个 cmets 是返回的。此 cmets 已弃用,您可以在developers.facebook.com/blog/post/2013/04/03/… 上阅读更多信息,找到此行“'stream' FQL 表中的'cmets' 字段已弃用。请使用'comment_info' 列获取'can_comment' 和'comment_count' 字段。 "
  • 您应该改用 fql。请查看developers.facebook.com/docs/technical-guides/fql
  • 好吧,让我们让它变得简单。fql 表中的'cmets' 字段已被弃用,但如果尝试使用图形 api "graph.facebook.com/POSTID/comments?access_token=.." 获取 cmets 可以吗?我也尝试使用 fql 查询来获取 cmets-"SELECT id, fromid, time, text, likes FROM comment WHERE object_id=id_value ORDER BY time" 但我在评论表中没有看到评论者姓名(但有 fromid)?如果我必须使用 fql 查询,我需要显示评论者姓名?

标签: facebook facebook-graph-api facebook-javascript-sdk


【解决方案1】:

因为评论者隐私设置。如果用户将其关闭,则无法通过 API 请求 cmets。当您在 facebook graph api 上进行测试时:

postid/?fields=cmets.summary(true)

你会看到调试信息:

total_count 表示 cmets 边上的大致节点数。返回的实际结果数可能因隐私设置而异。

您也可以参考这个相关问题: facebook graph api returns not all the comments

【讨论】:

    猜你喜欢
    • 2012-01-07
    • 1970-01-01
    • 2019-08-31
    • 1970-01-01
    • 2018-11-06
    • 1970-01-01
    • 1970-01-01
    • 2011-12-14
    • 1970-01-01
    相关资源
    最近更新 更多