如何在Facebook API v2.4及更高版本上获取收件人ID(RestFB / Facebook4J)

时间:2016-07-07 09:34:07

标签: java facebook api facebook-graph-api

我试图向希望了解订单当前状态的客户发送消息。现在我知道您只能向发送邮件的人发送邮件,因为您需要具有特定的收件人ID。这样做的问题是,如果我想获取收件人ID,我需要读取我的邮箱,因此需要权限:read_mailbox。但自Facebook API v2.4及更新版本起,不推荐使用read_mailbox。我不认为这是不可能做到的。问题是,如何使用v2.4或更新版本?

编辑:感谢CBroe的回答 现在的最后一个问题是,当我收到一条特定的消息时,它只给了我created_time和id。当我使用GraphAPI Explorer

尝试它时也是如此

此:

JsonObject message = getFacebookClient().fetchObject("m_mid.1467893842385:ae7475981839704062", JsonObject.class);

给出这个:

{
  "created_time": "2016-07-07T12:17:22+0000",
  "id": "m_mid.1467893842385:ae7475981839704062"
}

我做错了什么?我错过了参数或权限吗?

1 个答案:

答案 0 :(得分:0)

不,这不需要read_mailbox权限。

https://developers.facebook.com/docs/graph-api/reference/page/conversations#read

  

需要具有read_page_mailboxes权限的页面访问令牌

所以你必须要求这个权限,当然加上manage_pages(因为你需要后者来获取页面访问令牌。)