我正在写一个Facebook应用程序,其中登录用户(a)从他们的朋友列表(b)中选择朋友,然后在他们的朋友墙上发布应用帖子(b的帖子)。
我向用户询问publish_stream
权限
这是显示朋友选择器弹出窗口的代码:
function selectFriends() {
FB.ui({
method: 'apprequests',
message: 'You should learn more about this awesome game.', data: 'tracking information for the user'
},function(response) {
if (response && response.request_ids) {
//alert(typeof(response.request_ids));
//alert(response.request_ids);
alert (response.request_ids);
len=response.request_ids.length;
alert(len);
if (len>2) {
alert("Select no more than one friend");
}
else {
user_req_id = response.request_ids[0];
postOnFirendsWall(user_req_id);
}
}
else {
alert('Post was not published.');
}
});
}
这是postOnFirendsWall(user_req_id)
方法:
function postOnFirendsWall(friend_id)
{
/** Auto Publish **/
var params = {};
params['message'] = 'message';
params['name'] = 'name';
params['description'] = '';
params['link'] = 'https://www.link.com/';
params['picture'] = 'http://profile.ak.fbcdn.net/hprofile-ak-snc4/203550_189420071078986_7788205_q.jpg';
params['caption'] = 'caption';
var stam = '/'+friend_id+'/feed';
FB.api('/'+friend_id+'/feed', 'post', params, function(response) {
if (!response || response.error) {
alert('Error occured');
alert(response.error);
} else {
alert('Published to stream - you might want to delete it now!');
}
});
return false;
}
但我一直收到以下错误:(#210)用户不可见。
你能明白为什么吗?
答案 0 :(得分:0)
您是否确认用户A有权在用户B的墙上写字?如果没有,这将永远不会奏效。
此外,如果您想在朋友的墙上发帖,为什么还要使用apprequests对话框?