我正在尝试使用 3 个来自 facebook 的测试用户来测试 Facebook 用户好友列表,我已经将他们设置为好友并授予权限
user_friends
,问题是我总是从 facebook 图表中得到一个空数组API.
我正在使用的申请示例:
https://graph.facebook.com/v12.0/{user_id}/friends?access_token={token}
¹
我用这个测试用户 ID 替换 user_id,令牌也一样
我知道我正在请求正确的 user_id 和令牌,因为如果我这样做
https://graph.facebook.com/v12.0/{user_id}
² 我将能够获取此用户信息。
我已使用 facebook 将该用户登录到我的网站并接受了访问好友列表的请求,但仍然无法通过请求 1 联系到他们的好友。
我尝试将我的 Facebook 应用程序设置为开发和生产,但没有任何改变。
我已经尝试让两个用户都登录该平台,但也没有成功。
当我与任何测试用户一起登录 Facebook 时,我可以在他们的朋友列表中看到其他人,当我进入
settings > Apps and Websites
时,我可以看到我的应用程序在两个帐户中注册,但仍然得到一个空列表
我收到的第 1 个请求的回报是这样的:
{
"data": []
}
我在测试中忘记了什么?
我发现了错误所在,我的应用程序的类型为“Consumer”,当我删除该类型时,我可以发出请求并从 Graph API 接收正确的返回。
但是为什么它不能与“Consumer”类型一起使用,我不知道,在文档中它说这种类型具有权限¹,但实际上不起作用。
在尝试让我的应用程序获得 Meta Developper 的“user_friends”权限批准时,我在同一问题上陷入了两周的困境。我在我的 facebook 应用程序中创建了几个测试用户,并且在使用 Graph API Explorer 工具时,即使所有这些用户都是朋友/我安装的应用程序/已授予“user_friends”,返回的 json 响应也包含一个空的测试用户朋友列表。仅正确返回总大小。
我找到了一个解决方法:将我的 Facebook 应用程序克隆为测试应用程序,然后从这个新的测试应用程序创建测试用户。然后,当使用这些新的测试用户令牌测试 Graph API Explorer 工具时,返回的响应包含一个非空的测试用户好友列表。
此外,我没有更改我的应用程序类型(消费者)