bvakiti
bvakiti

Reputation: 3611

How to get user feeds from facebook using angular js.

I had referred many articles but It couldnt solve this issue. Im trying to get the user feeds from facebook.How can i get it.

Here is my code:

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 });
}

});

my html code:

<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>

from getuserdata() Im able to get the user details. Now how to access the user feeds. I had tried to use the below code but it outputs empty array.

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

Can anyone explain me the way to get the user feeds after user login.

Upvotes: 0

Views: 1687

Answers (2)

bvakiti
bvakiti

Reputation: 3611

I got to know the mistake that was done. Here the session will be expired when the person tries to access the feeds.

So include the FB.api('/me/feed',function(response){}) in the code section FB.login(function(response) {}) Now the session will be able to access the userfeeds.

Upvotes: 1

asarva
asarva

Reputation: 81

Your app needs the user_posts to get the user's feed. The /user/feed doc explains that pretty well. In any case, you need to implement facebook login, ask for user_posts permission from your user and go from them to get the user's feed.

Upvotes: 0

Related Questions