admin管理员组文章数量:1326518
I am getting user info but unable to get friend list.
<script>
function sortMethod(a, b) {
var x = a.name.toLowerCase();
var y = b.name.toLowerCase();
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}
window.fbAsyncInit = function() {
FB.init({ appId: 'xxxxxxxxx',
status: true,
cookie: true,
xfbml: true,
oauth: true
});
function updateButton(response) {
var button = document.getElementById('fb-auth');
if (response.authResponse) { // in case if we are logged in
var userInfo = document.getElementById('user-info');
FB.api('/me', function(response) {
userInfo.innerHTML = '<img src="/' + response.id + '/picture">' + response.name;
button.innerHTML = 'Logout';
});
// get friends
FB.api('/me/invitable_friends', function(response) {
var result_holder = document.getElementById('result_friends');
var friend_data = response.data.sort(sortMethod);
var results = '';
for (var i = 0; i < friend_data.length; i++) {
results += '<div><img src="/' + friend_data[i].id + '/picture">' + friend_data[i].name + '</div>';
}
// and display them at our holder element
result_holder.innerHTML = '<h2>Result list of your friends:</h2>' + results;
});
button.onclick = function() {
FB.logout(function(response) {
window.location.reload();
});
};
} else { // otherwise - dispay login button
button.onclick = function() {
FB.login(function(response) {
if (response.authResponse) {
window.location.reload();
}
}, {scope:'email'});
}
}
}
// run once with current status and whenever the status changes
FB.getLoginStatus(updateButton);
FB.Event.subscribe('auth.statusChange', updateButton);
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
user getting logged in but Unable to display facebook friends list.
Code was working before new sdk. using invitable_friends before it was me/friends.
anyone please help.
and also is there any way besides this ?
I am getting user info but unable to get friend list.
<script>
function sortMethod(a, b) {
var x = a.name.toLowerCase();
var y = b.name.toLowerCase();
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}
window.fbAsyncInit = function() {
FB.init({ appId: 'xxxxxxxxx',
status: true,
cookie: true,
xfbml: true,
oauth: true
});
function updateButton(response) {
var button = document.getElementById('fb-auth');
if (response.authResponse) { // in case if we are logged in
var userInfo = document.getElementById('user-info');
FB.api('/me', function(response) {
userInfo.innerHTML = '<img src="https://graph.facebook./' + response.id + '/picture">' + response.name;
button.innerHTML = 'Logout';
});
// get friends
FB.api('/me/invitable_friends', function(response) {
var result_holder = document.getElementById('result_friends');
var friend_data = response.data.sort(sortMethod);
var results = '';
for (var i = 0; i < friend_data.length; i++) {
results += '<div><img src="https://graph.facebook./' + friend_data[i].id + '/picture">' + friend_data[i].name + '</div>';
}
// and display them at our holder element
result_holder.innerHTML = '<h2>Result list of your friends:</h2>' + results;
});
button.onclick = function() {
FB.logout(function(response) {
window.location.reload();
});
};
} else { // otherwise - dispay login button
button.onclick = function() {
FB.login(function(response) {
if (response.authResponse) {
window.location.reload();
}
}, {scope:'email'});
}
}
}
// run once with current status and whenever the status changes
FB.getLoginStatus(updateButton);
FB.Event.subscribe('auth.statusChange', updateButton);
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
user getting logged in but Unable to display facebook friends list.
Code was working before new sdk. using invitable_friends before it was me/friends.
anyone please help.
and also is there any way besides this ?
Share Improve this question asked Sep 16, 2014 at 23:38 VinayVinay 391 gold badge1 silver badge3 bronze badges 2-
What do you need the list of friends for? With API v2, you only get a user’s friends that are also using the same app. And
invitable_friends
is for use by canvas apps in the Games category only; if you’re app isn’t in that category, then don’t misuseinvitable_friends
for anything else. – C3roe Commented Sep 16, 2014 at 23:45 - I am making simple app just unable to get friends list. – Vinay Commented Sep 16, 2014 at 23:48
2 Answers
Reset to default 3You need to ask for user_friends
in the authorization process:
FB.login(function(response) {
if (response.authResponse) {
window.location.reload();
}
}, {scope:'email,user_friends'});
You need this both for /me/friends
and for /me/invitable_friends
, see Facebook docs: https://developers.facebook./docs/games/invitable-friends/v2.1
Although you will only get friends who are using the App too with /me/friends
. See changelog for more information: https://developers.facebook./docs/apps/changelog
What CBroe mented in your question is very important too. invitable_friends
is for Games on facebook. only.
If your app is public and live also some of the friends who are using the app then you can get the list of them.
See what the documentation state #reference-user_friends:
user_friends - Provides access to a person's list of friends that also use your app.
After that you will be able to see what you want.
FB.api('/me/friends', function(response){
console.log(response);
}, {scope: 'user_friends'});
本文标签: javascriptGet facebook friends list in js apiStack Overflow
版权声明:本文标题:javascript - Get facebook friends list in js api - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1742199667a2431722.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论