使用Facebook Graph API的/ {page-id} /对话的权限问题

时间:2015-04-30 15:39:31

标签: node.js facebook-graph-api facebook-page

我正在使用Facebook Graph API,无法弄清楚为什么我无法接受以下路线:/{page-id}/conversations

当我这样做时,收到以下错误:(#283) Requires extended permission: manage_pages

以下是获取令牌的方式:

首先,我使用常规登录为用户获取了acces_token,我要求['read_page_mailboxes', 'manage_pages']作为权限。

使用此访问令牌,我调用/me/accounts以获取该用户的页面列表。在我的情况下,用户只有一个页面,从这个页面我拿ID和access_token。

能够检索页面的access_token意味着确实授予了manage_pages权限。

然后我尝试用页面access_token调用/{page-id}/conversations,我面对前面提到的错误。

这是node.js的一个片段,它基本上就是我在我的应用中在单个函数中所做的:

  var options = {
    url: getFbUrl('/me/accounts'),
    qs: { // Query string parameters 
      access_token: userAccessToken,
    },
    method: 'GET'
  };

  request(options, function (err, response, body) {
    if (err)
      return done(err);

    body = JSON.parse(body);

    var pageAccessToken = body.data[0].access_token,
        pageId = body.data[0].id;

    var pageOptions = {
      url: getFbUrl('/' + pageId + '/conversations'),
      qs: {
        access_token: pageAccessToken
      },
      method: 'GET'
    };

    request(pageOptions, function (err, response, body) {
      if (err)
        return done(err);

      console.log(response.statusCode);
      console.log('PAGE BODY', body);

      done();
    });
  });

我一直坚持这个比我想要的更长的时间,任何帮助或提示赞赏。

度过愉快的一天。

1 个答案:

答案 0 :(得分:1)

这是一个报告的错误,这里是链接:https://developers.facebook.com/bugs/380833342117530/