【发布时间】:2013-06-24 18:06:51
【问题描述】:
如何从 DOM 获取图像,然后通过 ajax 上传?
my_img_ele = document.getElementById("my_img");
这是ajax调用
var xmlHttp=new XMLHttpRequest();
xmlHttp.open("POST", "site", true);
var formData = new FormData();
formData.append(IMG_HERE);
xmlHttp.send(formData);
我一直在做的只是发送 url,然后查找图像服务器端。但我认为这会更快。
编辑:请注意,用户不是通过表单上传图像。这是一个img元素。
【问题讨论】:
-
处理表格。不知道如何发送以 img 元素开头的图像。
-
这里不存在跨域问题吗?不确定您是否可以从其他域“窃取”图像。
-
@user984003:如果
<img>位于不同的域中,则不能使用画布将其作为base64 获取。当您尝试读取画布的数据时,您将收到一个安全错误。 jsfiddle.net/pHER5 -
不上传图片数据,为什么不直接发送图片的URL,让服务器下载呢?我无法通过 AJAX 发送图像比发送 URL 更快。
标签: javascript ajax