2012-01-18 96 views
3

我正在创建一个小绘画应用程序,我想给我的画家在Facebook上发布他们的作品的选项。我正在使用Raphael JS创建图像。然后,我使用HTML5 Canvas方法toDataURL("image/png")创建一个包含图像的.png数据的JavaScript变量。toDataURL(“image/png”)to Facebook上传

现在我有这个数据,我不知道如何让人们把它提交给Facebook!我尝试使用FB.ui()函数,但它似乎只让我分享建立的链接。如果我尝试分享存储的数据,Facebook回复我的网址太长。我怎样才能将数据上传到Facebook而不是链接?

这是不可能的吗?我到处寻找,我还没有找到合适的答案。我知道Facebook是可怕的记录!

谢谢!

+0

我的直觉反应是,您很可能必须将图像数据发送到您自己的服务器,该服务器将托管图像并提供一个有效的HTTP URL返回到您的应用程序以传递到'FB.ui'呼叫。 – josh3736 2012-01-18 23:08:32

回答

3

图API中用户对象的照片连接(https://developers.facebook.com/docs/reference/api/user/)具有source属性。这是放置照片的数据内容(多部分/表单数据)的地方。

将照片数据上载到用户帐户后,会将其放置在专门用于您的应用程序的相册中。您将获得来自FB.api('me/photos','post',params,callbackFn);呼叫的新照片的编号。

使用该照片ID,你可以得到它的网址和使用它,但是你想要的。你甚至可以使用它张贴到用户的墙上供所有人看。

+0

谢谢DMCS,我会看看这个,看看它是否有效。我知道必须有一种方法。 – Alex 2012-01-19 03:09:36

+1

我有一个“(#324)需要上传文件”错误。现在有人如何解决它? – vrunoa 2013-06-16 19:50:45