获取朋友的javascript函数,facebook api?

时间:2014-01-04 22:22:29

标签: javascript facebook facebook-graph-api

我刚刚写了一个测试函数,今天学习使用facebook api,这就是我想出来的。我有几个问题,首先让我告诉你代码。

function getFriends() {
  FB.api('/me', function(response) {
      FB.api(response.id+'/friends', function(response) {
          $(document.body).prepend('<div class="test-list" style="position: fixed; z-index: 99999999; left: 50%; overflow: scroll; height: 500px; top: 25%;"></div>')
          for (var i=0; i < response.data.length; i++) { 
            FB.api('/'+response.data[i].id, function(response) {
              if(response.gender === 'male') {
                  $('.test-list').prepend('<li>'+response.name+'</li>');
              }
            });
          }         
      });
  });
}

我是否因为包裹它而滥用api?这是我弄清楚如何访问用户ID然后使用它来获取用户朋友的唯一方法,之后我循环所有朋友并仅过滤男性。

现在我可以在我的backbone.js应用程序中使用它,并使用此数据创建或更新集合。

2 个答案:

答案 0 :(得分:0)

你可以通过这样的api电话获得朋友:

function getFriends(){

    FB.api('/me?fields=friends.fields(gender,id,name)', function(response) {
      console.log(response);
    });

}

答案 1 :(得分:0)

您可以在API调用中使用“taggable_friends”关键字获取所有朋友的列表,如下所示。默认情况下,响应会为您提供25个朋友/页面。

FB.api("/me/taggable_friends",
  function (response) {
    if (response && !response.error) {
      /* handle the result */
    }
  }
);

参考:https://developers.facebook.com/docs/graph-api/reference/v2.3/user/taggable_friends