最近,我一直在测试信使平台。 到目前为止,一切都很好,但我希望获得更多关于用户的信息,而不仅仅是基本的个人资料信息。 当用户通过Messenger与您交谈时,您会得到一个特定的userId,根据我的理解,这不仅是页面范围的,而且是信使范围的。 在messenger documentation中,有一个示例调用用户配置文件API,如下所示:
curl -X GET "https://graph.facebook.com/v2.6/<USER_ID>?fields=first_name,last_name,profile_pic,locale,timezone,gender&access_token=<PAGE_ACCESS_TOKEN>"
但是,即使我的应用程序具有user_events权限,我也无法访问相应的图形api节点。
curl -X GET "https://graph.facebook.com/v2.6/<USER_ID>/events?fields=id,name&access_token=<PAGE_ACCESS_TOKEN>"
返回如下错误:
{
message: '(#100) Tried accessing nonexisting field (events) on node type (MessengerPageScopedID)',
type: 'OAuthException',
code: 100,
fbtrace_id: 'E+ramLeapT5'
}
我经常不使用graph-api,可能是因为我的网页仍处于开发状态,并且未获得&#34;已批准的商品&#34;类别? 有没有办法将messenger-scoped id链接到一个更简单的页面范围或应用程序范围的id,我可以使用它来进行这种调用?也许有自定义入口点?
答案 0 :(得分:6)
除了使用此特殊令牌的public_profile字段外,您无法访问任何其他内容。访问用户事件端点需要user_events权限,并且由于用户无需登录到您的应用程序以向您发送消息,因此除了用户的public_profile字段之外,无法检索访问任何内容的权限。