我试图从我的应用程序中将图像发布到我的墙上。我希望图像看到它的原始尺寸,而不是像一张小图片。
我尝试了两种方法,但它不起作用。
FB.ui(
{
target_id:'ID',
method: 'stream.publish',
access_token:accessToken,
attachment: {
name: 'test name',
caption: 'Caption here.',
description: 'description here',
href: 'http://facebook.com/mysite',
media: [{'type': 'image', 'src': pic, width: '150', height: '120', 'href': 'MY_SITE'}]
},
message: '',
},
function(response) {
if (response && response.post_id) {
alert('Post was published.');
} else {
console.log(response);
alert('Post was not published.');
}
}
);
这会在我的墙上张贴图片,但这是一张小图片。我试图将图像发布到我的相册中:
FB.api('me/photos', 'post',
{
url:'MY_URL',
href:'MY_LINK,
message: 'photo description',
access_token:accessToken
},
function(response) {
console.log(response);
if (!response || response.error) {
alert('Error occurred');
} else {
alert('Post ID: ' + response.id);
}
});
但是我的墙上没有显示图像。它在我的相册中,但我需要点击“批准照片”。点击后,它会显示在我的墙上。
我的问题是:如果我使用第一个代码,是否有图像以原始尺寸显示的方式?
如果我使用第二个代码,如何让它从我的相册中自动发布到我的墙上?
答案 0 :(得分:1)
对“我/照片”发帖后,会为您的应用创建一个新相册并在那里发布照片。你可以考虑创建一个新专辑或上传到现有专辑,让Facebook处理新闻提要中的朋友看到的照片大小。看看这篇描述你需要的博客文章。这是一个php
示例,但API调用在JavaScript
https://developers.facebook.com/blog/post/498/
答案 1 :(得分:1)
我不知道我做了什么,但这段代码对我有用:
FB.api('me/photos', 'post', {
url:pic.toString().replace('.png', '.fb.png'),
message:message,
access_token:accessToken
}, function(response) {
}
});
我添加scope: 'email,user_photos,publish_stream
到我的代码,这将图片添加到用户的相册,并立即显示在用户墙上。
答案 2 :(得分:0)
在您提供的第一个示例中,我看到了width
和height
。增加这些价值,没有帮助吗?
例如:
// ...
media: [{'type': 'image', 'src': pic, width: '1024', height: '768', 'href': 'MY_SITE'}]
// ...