我试图通过GraphAPI提取Facebook用户个人资料。来自查询:" https://graph.facebook.com/v2.4/search?q=vietnam&limit=1000&offset=0&type=user&format=json&access_token= ...."。我可以获得id的列表。但我想了解有关用户资料的更多信息,例如教育,电子邮件。我使用了查询:" https://graph.facebook.com/v2.4/ {id_user}?fields = education,birthday& access_token = ...."但我无法得到它们。对我的问题有什么建议吗?我将非常感谢
答案 0 :(得分:1)
为了获得更详细的信息,例如“教育”,“生日”等。和'电子邮件',您需要一个具有权限的访问令牌,授予您访问该信息的权限。
从图形API资源管理器中,使用您默认获得的令牌,使用以下查询:
me?fields=id,name,education,email,birthday
不会返回教育,电子邮件或生日
{
"id": "...",
"name": "..."
}
使用Graph API Explorer工具,您可以尝试使用更多权限进行相同的查询。 点击"获取令牌"按钮,然后在您收到的提示上,检查以下权限:
user_birthday
user_education_history
email (located inside "extended permissions")
然后再次尝试请求。你应该得到:
{
"id": "...",
"name": "...",
"email": "...@....com",
"birthday": "../../...."
"education": ...
}
注意:您可能无法获取所有字段,具体取决于目标用户是否已将这些字段提供给您。
此外,如果您要查询的用户是“自己”' (/ me)然后用户必须已将这些权限授予您的应用。 (用户可以拒绝个人权限。您的应用必须考虑到这一点并处理权限被拒绝的情况。)
一旦您确认无效,您只需将这些权限添加到您应用内的登录或授权流程中。