正如标题所示:我正在使用picnik API,并想知道是否有一种方法可以通过编程将图像数据发送给picnik,就像用户自己上传图像一样。
我正在考虑这样做,因为网站是一个CMS,我不能通过picnik的URL来获得图像,因为该网站背后的登录。
所以从本质上说:
PHP从磁盘加载图像,然后生成一个页面,其中包含一个表单,该表单已经加载了该图像数据。单击submit按钮将请求发送到picnik,然后他们将获得图像。
这是可能的吗,还是有更好的方法?
参考:http://www.picnik.com/info/api/tutorials/sending-images-in
发布于 2012-01-05 10:35:24
如果图像未存储在服务器上,则无法执行此操作。因为沙箱安全模型。你不能通过javascript或php从客户端读取数据。
发布于 2012-01-05 13:23:17
如果我正确理解了这个问题,换句话说,它是这样的:登录后的CMS用户不能直接将图像发送到picnik,因为如果您将图像存储在服务器上,picnik由于访问限制无法读取它。
如果这是正确的,您可以伪造图像发送表单,在picnik的手册中描述为Case #3: Sending image data with HTTP POST
。所有你需要做的就是制作一个带有文件输入域的表单。然后用户将图像提交到您的CMS,而不是将其存储在服务器上并将链接发送到picnik,您可以使用curl post请求立即将数据发送到picnik。
对于你的用户来说,它看起来就像是他把图片发布到了你的CMS上。对于picnik来说,它看起来像是用户向他们提交了图像。
https://stackoverflow.com/questions/8740992
复制相似问题