我的应用程序使用此端点来检索用户有权访问的页面列表。
对于我的个人帐户,即网页的管理员,它可以正常工作:
https://graph.facebook.com/me/accounts?access_token=[accesstoken_for_my_personal_profile]
Results:
{
"data": [
{
"access_token": "<the access token>",
"category": "Record Label",
"name": "Page Name",
"id": "Page ID",
"perms": [
"ADMINISTER",
"EDIT_PROFILE",
"CREATE_CONTENT",
"MODERATE_CONTENT",
"CREATE_ADS",
"BASIC_ADMIN"
]
}
]
}
但是,当我们创建一个全新的Facebook个人资料(普通用户,根据我的个人资料) - 并使用基于手机/短信的验证进行验证时,它只会在此处返回空白,尽管给予页面管理员访问权限相同的页面,并以完全相同的方式请求访问令牌:
https://graph.facebook.com/me/accounts?access_token=[accesstoken_for_newly_created_profile]
{
"data": [
]
}
更新 访问令牌权限也不同。
因此,当调用https://graph.facebook.com/me/permissions?access_token=xxx时,坏用户只有public_profile并安装为'grant' - 但是好用户拥有所有请求的权限,包括'manage_pages'。
这将指向登录页面,该登录页面以我们想要令牌的用户身份登录。
答案 0 :(得分:0)
上面提到的@CBroe:
这里的问题是,自从API v2.0问世以来,为不在请求应用中发挥作用的用户请求访问令牌将不会分配某些权限(在我们的案例中&#39) ; manage_pages&#39;)除非应用已经过审核。