0

Я ссылался много статей, но он не смог решить эту проблему. Я пытаюсь получить пользовательские каналы из facebook. Как я могу его получить.Как получить пользовательские каналы из facebook с помощью угловых js.

Вот мой код:

var newMod = angular.module('newapp', []); 

newMod.controller('mainCtrl', function ($scope) { 

window.fbAsyncInit = function() { 
    //SDK loaded, initialize it 
    FB.init({ 
     appId: 'your app id', 
     xfbml: true, 
     version: 'v2.3' 
    }); 

    //check user session and refresh it 
    FB.getLoginStatus(function (response) { 
     if (response.status === 'connected') { 
      //user is authorized 
      document.getElementById('loginBtn').style.display = 'none'; 
      getUserData(); 
     } else { 
      //user is not authorized 
     } 

     }); 

    function getUserData() { 
     FB.api('/me', function (response) { 
      document.getElementById('response').innerHTML = 'Hello ' + response.name; 
      document.getElementById('dialog_div').style.border = '1px solid red'; 
      document.getElementById('dialog_div').innerHTML = response; 
     }); 


    } 
}; 

//load the JavaScript SDK 
(function (d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) { return; } 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/sdk.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 


$scope.loginClick = function() { 
    FB.login(function (response) { 
     if (response.authResponse) { 
      //user just authorized your app 
      document.getElementById('loginBtn').style.display = 'none'; 
      getUserData(); 
     } 
    }, { scope: 'email,public_profile', return_scopes: true }); 
} 

});

мой HTML-код:

<body ng-app="newapp"> 

<div ng-controller="mainCtrl"> 
<button id='loginBtn' ng-click="loginClick()" >FacebookLOGin</button> 
    <div id="response"></div> 
    <div id="dialog_div"></div> 
</div> 

из getuserdata() Im в состоянии получить информацию о пользователе. Теперь, как получить доступ к фидам пользователей. Я попытался использовать приведенный ниже код, но он выводит пустой массив.

FB.api("/me/feed",function(response){ 
if(response !=""){ 
// access the feed data 
    } 
}) 

Может ли кто-нибудь объяснить мне, как получить фиды пользователей после входа в систему.

+0

Посмотрите документацию для '/ me/feed'. Он требует некоторых разрешений – WizKid

+0

Что еще мне нужно включить? – vbharath

+0

Что говорит документация? – WizKid

ответ

1

Я узнал ошибку, которая была сделана. Здесь сеанс будет истек, когда пользователь попытается получить доступ к фидам.

Укажите FB.api('/me/feed',function(response){}) в поле кода FB.login(function(response) {}) Теперь сеанс сможет получить доступ к пользовательским кордам.

0

Для того, чтобы получить канал, вам нужно user_posts. Док объясняет это довольно хорошо. В любом случае вам необходимо внедрить логин facebook, запросить у пользователя user_posts и перейти от них, чтобы получить фид пользователя.

+0

Я проверил URL-адрес http://graph.facebook.com/me/feed this show oauth error. Как закодировать для получения фидов с использованием FB.api ('/ me/feed', function (response) {}); ? – vbharath

Смежные вопросы