我看到很多粉丝在我喜欢他们的页面之后得到我的朋友列表,没有任何权限对话框屏幕,我已经尝试了很多但是总是得到“需要异常令牌”。
所以有可能在用户喜欢我们的页面后获得用户好友列表吗?
由于
答案 0 :(得分:0)
注意,我使用的是underscore.js(http://documentcloud.github.com/underscore/),没有冲突:
var UnderScore = _.noConflict();
此查询获取me()
的朋友,该朋友目前已登录Facebook用户。您可以使用Facebook用户ID替换me()
。
获取朋友的代码:
var friends = {handles:[],ids:[],names:[]};
var q = 'select username, uid, name from user where '+
'uid IN (SELECT uid2 FROM friend WHERE uid1 = me())';
var r=FB.Data.query(q);
r.wait(function(rows){
if (UnderScore.isArray(rows) && (rows.length>0)) {
UnderScore.each(rows,function(i){
if (i.username && !UnderScore.isNull(i.username)) {
friends.handles.push(i.username.toString().toLowerCase());
if (i.name && !UnderScore.isNull(i.name)) {
friends.names[i.username.toString().toLowerCase()] = i.name
}
}
if (i.uid && !UnderScore.isNull(i.uid)) {
friends.ids.push(i.uid.toString().toLowerCase());
if (i.name && !UnderScore.isNull(i.name)) {
friends.names[i.uid.toString().toLowerCase()] = i.name
}
}
});
}
}
运行该代码后,这将是一个异步事件,变量friends
将填充Facebook好友的ID,名称和句柄。
答案 1 :(得分:0)
这不是不。您需要具有足够权限的当前用户ID才能获取用户的朋友列表,并且Facebook不会仅仅因为喜欢您的页面而共享用户的ID。
我不确定你正在谈论的这些页面是怎么做的,也许是使用旧的已弃用的FBML,但是再次...... 我不认为这是可能的用户授权。