Ben*_*ten 8 facebook facebook-graph-api
我需要通过Facebook Graph API从他的公开个人资料中检索Facebook用户的性别.
不幸的是,它并不总是有效.看这些例子:
工作:https: //graph.facebook.com/1423993568
{
"id": "1423993568",
"gender": "male",
...
}
Run Code Online (Sandbox Code Playgroud)
不工作:https: //graph.facebook.com/10152133878666403
{
"error": {
"message": "Unsupported get request. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
"type": "GraphMethodException",
"code": 100
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当我直接通过网络打开用户ID时,它可以工作,我甚至可以看到性别.(转到"关于/联系和基本信息")我使用我的个人帐户登录,而不是该用户的朋友! http://www.facebook.com/10152133878666403
问题是什么?这是Facebook的请求或安全功能的问题吗?
更新:
我可以像这样做一个解决方法,但只有当我使用浏览器登录时:
打开此请求时,请获取app_scoped_user_id并从重定向网址获取Facebook用户名:
http://www.facebook.com/app_scoped_user_id/10152133878666403
--> https://www.facebook.com/shiffoni
--> https://graph.facebook.com/shiffoni
Run Code Online (Sandbox Code Playgroud)
收益:
{
"id": "669926402",
"first_name": "Shiffoni",
"gender": "female",
"last_name": "Leonhardt",
"locale": "de_DE",
"name": "Shiffoni Leonhardt",
"username": "shiffoni"
}
Run Code Online (Sandbox Code Playgroud)
获得性别,真实userId或昵称的任何其他想法?
正如Facebook员工在评论中已经回答的那样,根本不可能,因为它不支持获得"性别"或真正的Facebook用户ID.
可能的解决方法:
| 归档时间: |
|
| 查看次数: |
32315 次 |
| 最近记录: |