自定义内部Facebook App Graph API不返回页面的帖子评论

时间:2019-04-09 18:33:46

标签: facebook facebook-graph-api oauth-2.0 facebook-fql facebook-oauth

我正在尝试创建一个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"
    }
}

2 个答案:

答案 0 :(得分:1)

除了最后一个请求外,您都不会在任何地方询问。而在最后一个中,您试图要求对页面对象本身进行评论,这不是问题。

您需要在feed或posts端点上征求评论:

/{pageId}/feed?fields=comments

/{pageId}/posts?fields=comments

如果您还希望在同一请求中获取有关该页面的其他信息,则可以使用字段扩展语法,

/{pageId}?fields=id,name,posts{comments}

(除了默认ID外,您可能还需要其他任何帖子字段,您需要在列表中以逗号分隔-posts{message,comments,...}

答案 1 :(得分:0)

我能够通过使用以下请求获得评论:

https://graph.facebook.com/{post_id}/comments?access_token={accessToken}&summary=true

post_id看起来像这样- 57042555475_57045425233226

您必须按帖子而不是页面来获取评论,因此首先您需要致电以获取所有帖子,然后致电每个帖子以获取评论。