Пустой список друзей в Facebook

Поэтому я использую плагин "Facebook-SDK". Я инициализирую Facebook следующим образом:

FB.init({ appId: 'xxxxxxxxxxx', cookie: true, xfbml: true, oauth: true, status: true });

    FB.login(function(){ // get permissions
    }, {scope: 'user_friends, read_friendlists, user_photos, email, publish_actions  '});

    FB.getLoginStatus(function (response) { // to generate AccessToken
      if (response.authResponse) {
        console.log('LoginStatusResponse: ' + JSON.stringify(response, null, 4));
      } else {
        console.log('AuthResponse: No');
      }
    });

Затем в ответ на событие нажатия кнопки я делаю:

'click #get_fb_friends' : function(event, template) {

    FB.api( 
      "/me/friends",
      function (response) {
        if (response && !response.error) {
          console.log('GOT them !!!' + JSON.stringify(response, null, 4));
          return response;
        } else {
          console.log('No can do' + JSON.stringify(response, null, 4));
        }
      });
  }

Дело в том, что я получаю пустую переменную Data:

GOT them !!!{
    "data": []
} 

PS: запрос "/me" возвращает всю информацию о себе, это "/me/friends" это не работает

Это может быть проблема с разрешениями?

2 ответа

Решение

Как сказал @Wampie, API изменился, поэтому вы можете попробовать использовать API v1 (имейте в виду, что вам потребуется запросить новый токен доступа).

И вы по-прежнему можете приглашать друзей в свое приложение, используя apprequests метод.

FB.ui({
  method: 'apprequests',
  message: 'You should learn more about the Platform.'
}, function(){
  console.log(arguments);
});

Пример здесь: https://www.fbrell.com/fb.ui/apprequests

Facebook изменил свой API несколько недель назад, вы можете получить доступ к списку своих друзей, только если они лично согласились использовать ваше приложение. Ничего не поделаешь

Другие вопросы по тегам