我使用facebook UI将我网页上生成的内容分享到Facebook页面。我想要分享的内容是Canvas,它会随着用户交互而动态变化。
所以我可以使用下一个代码轻松地在Image中转换此Canvas:
var canvas = document.getElementById("canvas_current_athlete");
var image = canvas.toDataURL("image/png")
事情是,似乎facebook UI不允许您发送数据或八位字节流,但只允许发送图片的静态URL。如示例所示:
FB.ui({
method: 'feed',
name: 'Facebook Dialogs',
link: 'https://developers.facebook.com/docs/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'},
我可以使用以下代码下载图片:
var canvas = document.getElementById("canvas_current_athlete");
var image = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
window.location.href = image;
但当然这是在客户端下载它,我需要在服务器中使用静态URL为facebook UI提供该图片。
有没有办法将图像作为数据发送到Facebook帖子使用faceobok UI或其他易于分享画布到Facebook的东西?
提前致谢, luchux。
答案 0 :(得分:0)
使用Feed / Feed对话框 - 否。您只能将picture
添加为链接。
我不确定feed
在您的情况下是否更相关,但如果您可以使用/photos,则可以使用图像数据上传图片。但当然不会发布Feed,而是会将照片添加到您的相册和故事中:"用户添加了一张新照片"将在墙上发表。
但如果您的动机是发布Feed,则无法使用图片数据;你必须有一个图片网址。另一个技巧 - 您可以先将照片添加到Facebook,然后在您的Feed中使用该图像。
希望它有所帮助。祝你好运!