假设我想将浏览器中的随机数据流上传到远程服务器。我会使用像
这样的东西var oReq = new XMLHttpRequest();
oReq.open("POST", url, true);
oReq.onload = function (oEvent) {
// Uploaded.
};
var blob = new Blob(['abc123'], {type: 'text/plain'});
oReq.send(blob);
并重复此操作,因为我有多次上传。
但是,如果我想使用单个XHR请求发送它怎么办?是否可以覆盖Blob函数并执行类似
的操作function Blob(arr, options) {
var chunkSize = 1024;
MyBlob.prototype.nextChunk(function () {
return arr.splice(0, chunkSize);
});
}
我知道nextChunk
显然不存在,但也许有一些界面可以被覆盖?我查看了Blob specification并尝试使用alternative Blob implementation(我稍微修改了一下以强制覆盖window.Blob
),但没有任何内容发送到服务器。