2018-05-14 12:45

webuploader 0.1.5文件分片上传暂停再上传,部分分片丢失问题解决办法

摘要

:none


经过调试我已经找到出问题的地方了

            // hook, 每个分片发送之前可能要做些异步的事情。
            promise = me.request( 'before-send', block, function() {
                // 有可能文件已经上传出错了,所以不需要再传输了。
                if ( file.getStatus() === Status.PROGRESS ) {
                    me._doSend( block );
                } else {
                    me._popBlock( block );
                    Base.nextTick( me.__tick );
                }
            });


我看了下作者的想法是出错了就不应该再上传。但是点击暂停的时候,基本上每次都有几个分片会失败,导致这些分片不能再上传,所以只需要修改这个地方将失败的片重新放回去队列即可。

            // hook, 每个分片发送之前可能要做些异步的事情。
            promise = me.request('before-send', block, function () {
                // 有可能文件已经上传出错了,所以不需要再传输了。
                if (file.getStatus() === Status.PROGRESS) {
                    me._doSend(block);
                } else {
                    //console.log(block.file.getStatus() , Status.INTERRUPT)
                    if (block.file.getStatus() === Status.INTERRUPT) {
                        me._putback(block);
                    } else {
                        me._popBlock(block);
                        Base.nextTick(me.__tick);
                    }
                }
            });



如果这篇文章对你有所帮助,可以通过右边的“打赏”功能进行小额的打赏。

本网站部分内容来源于互联网,如有侵犯版权请来信告知,我们将立即处理。