无法使用Facebook Graph API检索朋友信息

时间:2012-04-08 19:34:20

标签: facebook facebook-graph-api facebook-like facebook-javascript-sdk

以下是一些测试代码:

<script> 
  var movieList = new Array();
  var friendList=" ";
  var friendCount = 0;

function get_friend_likes() {
FB.api('/me/friends', function(response) {
    friendCount = response.data.length;
    for( i=0; i<response.data.length; i++) {
      friendId = response.data[i].id;
      friendList=friendList+(response.data[i].name)+'<br/>';//store names
      FB.api('/'+friendId+'/movies', function(result) {
        movieList = movieList.concat(result.data); //fetch data to the pool
        friendCount--;
        document.getElementById('test').innerHTML = friendCount 
          + " friends to go ... ";
      });//end_FB.api
    } //end_for

  });//end_FB.api
  }
</script>

问题是:我可以通过外部FB.api调用成功获取朋友的姓名和ID,但我无法在内部FB.api调用中获取'/ movies'信息。返回的数据为空。 有什么见解吗?非常感谢!!

1 个答案:

答案 0 :(得分:0)

根据User object api文档,您需要“user_likes”权限才能获取 / me / movies 和“friends_likes”获取 friendId / movies 的权限

你有没有要求这些权限? 不确定如何对用户进行身份验证,但您也可以使用javascript sdk进行身份验证:

FB.login(callbackFunction, { scope: "user_likes,friends_likes" });