我正在使用jQuery检索图像并将其发布到另一种形式:
handler = function(data, status) {
...
var fd;
fd = new FormData;
fd.append("file", data);
jQuery.ajax({
url: target_url,
data: fd,
processData: false,
contentType: false,
type: "POST",
complete: function(xhr, status) {
console.log(xhr.status);
console.log(xhr.statusCode);
}
});
};
jQuery.get(imageUrl, null, handler);
表单看起来像这样:
<form>
<input type="file" name="file" />
...
</form>
事情没有按预期发挥作用。我从服务器端获得了200响应,并且它使用预先填充的一些值来呈现表单。
我也尝试过设置contentType: "multipart/form-data"
为什么这不起作用?
答案 0 :(得分:2)
您正在发送一个不会被识别为文件的字符串。 尝试发送blob
fd.append("file", new Blob([data], { "type" : "text/plain" }));
我很确定这只适用于文本文件,除非您在原始请求中设置了responseType。