gpt4 book ai didi

javascript - 如何将 FormData 附加到 XMLHttpRequest

转载 作者:行者123 更新时间:2023-12-03 09:10:25 25 4
gpt4 key购买 nike

我有一个像这样的 jquery 请求

    function sendData() {

var formData = new FormData($("#myform")[0]);
$.ajax({
type: 'POST',
url: "/process",
data: formData,
dataType: 'json',
contentType:false,
cache:false,
processData:false,
timeout: 30 * 1000,
beforeSend: function( xhr ) {
},
success: function(jsonData,status,xhr) {
},
error: function(data,status,xhr) {
}
});
}

它可以很好地上传图像并将其发送到服务器。但它不处理二进制返回类型(用于接收二进制格式的图像)。

然后我这里有其他代码

    // http://www.henryalgus.com/reading-binary-files-using-jquery-ajax/
function fetchBlob(uri, callback) {
var xhr = new XMLHttpRequest();
xhr.open('GET', uri, true);
xhr.responseType = 'arraybuffer';

xhr.onload = function(e) {
if (this.status == 200) {
var blob = this.response;
if (callback) {
callback(blob);
}
}
};
xhr.send();
};

它处理我需要的规范。但问题是,如何修改此工作代码以便可以将 FormData() 对象与图像附加在一起?

谢谢

最佳答案

您可以按如下方式附加它:

function fetchBlob(uri, callback) {
var formData = new FormData($("#myform")[0]);
var xhr = new XMLHttpRequest();
xhr.open('GET', uri, true);
xhr.responseType = 'arraybuffer';

xhr.onload = function(e) {
if (this.status == 200) {
var blob = this.response;
if (callback) {
callback(blob);
}
}
};
xhr.send(formData); //attach it here.
}

<强> SOURCE

关于javascript - 如何将 FormData 附加到 XMLHttpRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32086626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com