我已设置订阅,以便我的应用可以接收特定网页的实时更新。这可以按预期工作,并且当用户发布到页面时我会收到更新。
更新只包含页面ID,因此我使用Graph API获取帖子的详细信息。问题是实时更新中的帖子ID无效,我从图谱API中收到错误。
如果我查询了网页的Feed,则该帖子会显示不同(正确)的ID。
正确的ID包含< page id> _< post id>。实时更新中的那个只是< post id>没有带前缀的页面ID。
实时更新中的数据:
{
"object":"page",
"entry":[{
"id":"<page id>",
"time":1372177485,
"changes":[{
"field":"feed",
"value": {"item":"post", "verb":"add", "post_id":<post id>}
}]
}]
}
图表查询:
http://graph.facebook.com/<post id>
响应:
(GraphMethodException - #100) Unsupported get request.
使用长期(非过期)页面令牌执行Graph查询。我使用Graph API Explorer工具(https://developers.facebook.com/tools/explorer)以及使用短期用户令牌时得到相同的响应。
显然,我可以简单地将页面ID添加到给定的页面ID上以生成有效的ID,但如果格式随时更改,那么它不是很强大。为什么Facebook没有返回有效的ID?我有什么不对的吗?