1

我制作了一个使用 canvas 元素的基本 HTML5/JS 漫画创作工具。

我希望用户能够通过 Facebook API 上传他们的漫画。

我不相信 Facebook 允许从 canvas.toDataURI() 方法以 base64 字符串的形式发布图像,并且不想使用我自己的服务器来转换这些图像并临时存储它们。

解决这个问题的最佳方法是什么?我想知道的可能性:将画布转换为 blob?通过网络服务存储 blob(如果是,建议?) 将 blob 直接上传到 Facebook?(那可能吗?)

4

2 回答 2

1

我不明白为什么不能进行“正常”上传。PROFILE_ID/photos您可以通过发布到,使用sourcetype 参数为用户创建新照片multipart/form-data

所以我要尝试的第一件事是将画布对象中的图片信息转换为“正常”形式(以正确的格式将其写入输入元素(?)),然后将其发送到 Facebook。如果这一步成功,我会看看 jQuery 或其他一些库的form.serialize方法是否可以构建类型的请求multipart/form-data。如果这也是可能的,那么以该格式获取数据并使用 FB.api 发布它应该没有进一步的问题(尽管您可能希望告诉您的用户耐心等待,因为这可能需要一段时间)。

不能确定这是否可行,但我会试一试。

于 2012-06-18T07:36:16.450 回答
0

Facebook 与 Heroku 合作免费托管应用程序,您可以将其用作临时服务器。

于 2012-06-18T03:02:16.657 回答