gpt4 book ai didi

javascript - 将大型 json 发送到服务器的最佳模式是什么

转载 作者:行者123 更新时间:2023-12-03 05:37:00 27 4
gpt4 key购买 nike

我在 web.config 中配置了 maxrequeSTLength = 10MB。但在我的系统中,有一个导入 .csv 的功能,而我的客户导入的这个 .csv 可以有超过 10MB。因此,我需要一种具有良好性能的模式来发送大型 json (导入的 json)。

我想到了zip或分部分发送json。最好的模式是什么?

还有其他更高效的形式吗?

最佳答案

使用文件 API ( https://www.html5rocks.com/tutorials/file/dndfiles/ ),我们可以最大限度地减少上传大文件的工作量。该技术是将上传内容分割成多个 block ,为每个部分生成一个 XHR,然后将文件放在服务器上。这类似于 GMail 快速上传大型附件的方式。这种技术还可用于绕过 Google App Engine 的 32MB http 请求限制。

function upload(blobOrFile) {
var xhr = new XMLHttpRequest();
xhr.open('POST', '/server', true);
xhr.onload = function(e) { ... };
xhr.send(blobOrFile);
}

document.querySelector('input[type="file"]').addEventListener('change', function(e) {
var blob = this.files[0];

const BYTES_PER_CHUNK = 1024 * 1024; // 1MB chunk sizes.
const SIZE = blob.size;

var start = 0;
var end = BYTES_PER_CHUNK;

while(start < SIZE) {
upload(blob.slice(start, end));

start = end;
end = start + BYTES_PER_CHUNK;
}
}, false);

})();

此处未显示的是在服务器上重建文件的代码。

附注当然函数如 http://underscorejs.org/#zip也可以使用。

关于javascript - 将大型 json 发送到服务器的最佳模式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40687792/

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