我的要求是使用Javascript SDK将照片发布到Facebook。 我面临以下问题:
首先,
FB.login(function (response) {
if (response.authResponse) {
var access_token = response.session.access_token;
alert(access_token);
} else {
alert('User is logged out
}
}, true);
每当我尝试执行这段代码时,我都会获得authResponse:null,状态:“unknown”。
其次。我已经在Facebook上注册了我的应用程序,并且可以在需要时手动生成访问令牌。使用相同的访问令牌,当我尝试按如下方式发布照片时:
var imgURL="http://www.photographyblogger.net/wp-content/uploads/2010/05/flower29.jpg";
FB.api('/photos', 'post', {
message: 'photo description',
access_token: 'MY_ACCESS_TOKEN',
url: imgURL
}, function (response) {
if (!response || response.error) {
alert('Error occured:' + response.error.message);
} else {
alert('Post ID: ' + response.id);
}
});
我收到提示“帖子ID:'SOME_VALUE'”。但是这张照片根本没有张贴在我的墙上。请帮助大家,因为这是我需要尽快完成的紧急工作。谢谢!
答案 0 :(得分:2)
var wallPost = {
url: 'http://fbrell.com/f8.jpg',
};
FB.api('/me/photos', 'post', wallPost , function(response) {
if (!response || response.error) {
alert('Error occured');
} else {
alert('Post ID: ' + response);
}
});
这会将图片发布到您的墙上!
答案 1 :(得分:1)
要将照片发布到墙上,您可以执行以下操作:
var imgURL="http://www.photographyblogger.net/wp-content/uploads/2010/05/flower29.jpg";
var wallPost = {
message : "photo description",
picture: imgURL
};
FB.api('/me/feed', 'post', wallPost , function(response) {
if (!response || response.error) {
alert('Error occured');
} else {
alert('Post ID: ' + response);
}
});
参考:FB.api