如何使用Graph API获取用户的总朋友数[JavaScript]

时间:2017-02-08 21:58:40

标签: javascript html json facebook-graph-api

在对Facebook的Graph API v2.8进行一些研究之后,我终于明白了如何使用 JavaScript 来制作函数。我想特别做的是在我让用户登录我的应用程序后,他们会点击一个按钮来抓取他们的朋友总数。

以下是我尝试用来完成此操作的代码:

HTML

<button onclick="getInfo()">Get Friend Count</button>

的JavaScript

// Get Basic User Info
// TODO: Get user's friend count
function getInfo() {
FB.api('/me/friends', 'GET', {
    fields: 'total_count'
}, function (response) {
    document.getElementById('status').innerHTML = response.id;
});
}

也许fields参数错了? 最终目标是我希望在我的应用程序中公开显示在用户个人资料中的朋友总数。

编辑: user_friends已获得我生成的访问令牌的授权,但我的response.id以未定义的形式返回。

编辑2:使用Graph API Explorer返回的数据采用 JSON 格式:

{
"id": "my_id",
"name": "my_name",
"friends": {
"data": [
],
"summary": {
  "total_count": 161
  }
 }
}

2 个答案:

答案 0 :(得分:3)

  

请注意,我是在2017年写的,自那时起API可能已经发生变化,特别是在整个Cambridge Analytica之后。

好消息!我通过深入研究我在本网站找到的一些源代码解决了这个问题:http://snowadays.jp/test/fb_friend_test.html

以下是 JavaScript

function getInfo() {
FB.api('/me/friends', 'GET', {fields: 'summary'}, function(response)
{
document.getElementById('status').innerHTML = 
response.summary.total_count;
});
}

答案 1 :(得分:0)

您的应用需要user_friends授权,请注意仅安装应用的朋友将在API v2.0及更高版本中返回
在使用Javascript SDK之前,我建议您使用Graph explorer

进行一些测试