gpt4 book ai didi

javascript - JavaScript 中的文件切片导致空 blob

转载 作者:搜寻专家 更新时间:2023-10-31 08:51:07 30 4
gpt4 key购买 nike

我正在实现一个基于浏览器的分块文件 uploader 。要打开我正在使用的文件 <input type="file" id="fileSelector" />和这段代码(简化):

$('#fileSelector').on('change', function () {
_file = evt.target.files[0];
});

我正在将文件切成 block ,但没有将 block 读入内存(未显式)。

问题:偶尔(对于不到 0.1% 的上传文件)从底层文件切片的 block 是空的。例如。在上传大文件期间一切顺利,然后在该文件调用的中间:

var _blob = _file.slice(chunk.start, chunk.end, _file.type);

生成一个空切片(_blob.size 为 0)。将此类 blob 发送到服务器 (.NET 4.6) 会导致 Request.InputStream是空的。我正在发送二进制数据:

_xhr.setRequestHeader('content-type', 'application/octet-stream');
_xhr.send(_blob);

我还应该提到调用 _file.slice再次产生相同的空 blob。我可以在 Chrome 57、Chrome 60(Win 和 Mac)、Mac Safari 10.1.1 和 Edge 15 中观察到这一点。其他浏览器也是可能的。

有什么问题吗?我正在考虑的事情:

最佳答案

答案很简单:上传的文件消失(重命名、删除)时会发生这种情况。

关于javascript - JavaScript 中的文件切片导致空 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46055733/

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