文件全部分片上传后之后再点一次上传会报错
来源:9-5 分片检查与极速秒传

皮卡乒乓
2020-10-15
害,我看到后面的内容了,问题已解决.
============================
我的分析如下:
假如我的文件是35MB,分片大小是10MB,那么就是分成4个分片,在第一次全部上传成功之后,数据库会记录shard_index=4
,这时候如果没有点保存而是直接关闭模态框然后打开上传同一个视频或直接再点击一次前端的上传按钮,然后上传相同的视频,就会报这个错,是不是因为这样会触发else流程里那个+1
else {
param.shardIndex = obj.shardIndex + 1;
console.log(“找到文件记录,从分片” + param.shardIndex + “开始上传”);
_this.upload(param);
}
这样的话传下去shard_index
就是shard_index=5
,就超出分片的范围了,会导致在 getFileShard (shardIndex, shardSize)
里面就拿不到正确的分片数据,然后分片数据是空,传到后端,后端无法解析才会报这个错。
我这样理解是正确的吗?
写回答
1回答
-
看你参数传递是你说的这个问题。
课程中有关于分片检查的演示,如果判断最大分片是4,那就直接极速秒传了,不会再传5。
012020-10-20
相似问题