2012-07-31 57 views
3

我会遇到以下问题在我的Java Android应用错误计数:的Facebook返回发表评论

当我创建了一个信息的评论中(发送到FB的请求)我得到一个成功的响应(我得到的ID为该帖子新创建的评论)。目前很好。

但如果当时我立即打电话征求意见数:

"SELECT comments.count FROM stream WHERE post_id = '" + postId + "'" 

然后,而不是如预期般1(假设它是第一个评论),我得到0(FB告诉是没有意见的话)。我的问题是为什么会发生?如果我等待一段时间,问题就会消失。例如,如果我等待大约一分钟,那么FB开始返回预期的评论数。

它看起来像(只是我的猜测)FB没有足够的时间来更新其索引(我真的相信他们使用索引)。所以我得到一个过时的/缓存的resutls。我不知道是否有任何手段来强制获取最新的数据(绕过FB侧的任何缓存)?

澄清:我知道如何获得评论列表。我可以通过从返回的集合中获取大小来获得计数。但那不是我的目标。因为发布的上面的FQL请求应该更便宜/更快。

回答

0

您是否尝试过使用FB API进行此操作。评论可以被提取如下。

FB.api("/" + PostId + "/comments", function(){//do your processing}) 

希望这有助于。

感谢

考希克

+0

我不是问的方式来获得的评论列表 - 这是不是一个问题,工作正常。我所要求的与获得评论数量有关。有API,但它返回一个错误的计数。为什么?以及如何强制它返回正确(最新)的值? – 2012-07-31 13:42:25

+1

我提到的FB API调用将提供JSON数组。该数组的长度可以用作注释的数量。 – 2012-08-01 09:15:12

+0

谢谢。我当然明白,但这不是我的问题。 – 2012-08-01 10:41:50