我正在尝试创建一个Facebook应用程序,可以下载我创建的业务页面的帖子的评论。我已经成功创建了应用程序并通过OAuth连接了我的Facebook页面。但是,页面帖子上的评论都没有通过。任何帮助将不胜感激,请参阅下面的代码。
https://graph.facebook.com/v3.2/{pageId}/?access_token={accessToken}&fields=id,name,posts
响应:
{
"id": "{pageId}",
"name": "Page Name",
"posts": {
"data": [
{
"created_time": "2016-01-15T19:46:28+0000",
"message": "POST 1",
"id": "47829695884833182_111061999222282539"
},
{
"created_time": "2016-01-15T19:45:56+0000",
"message": "POST 2",
"id": "4734458296958848182_111061922795615892"
}
}
}
如果我使用以下端点,会发生同样的事情:
https://graph.facebook.com/v3.2/{pageId}/feed?access_token={accessToken}
要么
https://graph.facebook.com/v3.2/{pageId}/posts?access_token={accessToken}
我找到了一个参考,显示我可以通过此端点获得评论:
https://graph.facebook.com/v3.2/{pageId}/comments?access_token={accessToken}
但是我收到以下回复:
{
"error": {
"message": "(#100) Tried accessing nonexisting field (comments) on node type (Page)",
"type": "OAuthException",
"code": 100,
"fbtrace_id": "EN938TNAHM6"
}
}
除了最后一个请求之外,您不会在任何地方要求评论。而最后一个你试图要求对页面对象本身发表评论,这不是一件事。
您需要在feed或posts端点上询问注释:
/{pageId}/feed?fields=comments
/{pageId}/posts?fields=comments
如果您想在同一请求中获得有关该页面的其他信息,您可以使用Field Expansion语法,
/{pageId}?fields=id,name,posts{comments}
(除了默认ID之外你可能想要的帖子的任何其他字段,你需要列出逗号分隔 - posts{message,comments,...}
)
我可以通过使用以下请求获得评论:
https://graph.facebook.com/{post_id}/comments?access_token={accessToken}&summary=true
post_id看起来像这样 - 57042555475_57045425233226
您必须通过帖子而不是网页来获取评论,因此首先您需要拨打电话获取所有帖子,然后拨打每个帖子的电话以获取评论。