blueimp 文件上传器直接上传到 AWS S3 替换之前的部分

blueimp file uploader direct upload to AWS S3 replace previous part

我正在使用以下插件在不使用任何服务器的情况下直接在 AWS S3 上上传大文件。 https://github.com/blueimp/jQuery-File-Upload/wiki/Upload-directly-to-S3

它适用于小文件,但是当我使用它的文档中描述的 "maxChunkSize" 参数来处理大文件时,它可以工作,但它取代了之前的部分。

假设有一个 100 MB 的文件,我在成功上传后使用 10MB 块上传它,我的 S3 存储桶上只收到 10 MB。

请帮我解决这个问题。

这是我正在使用的 JS 代码

$('#file_upload').fileupload({
                autoUpload: false,
                maxChunkSize: 10000000, // 10 MB => 10000000
                add: function (e, data) {
                    $("#upload_btn").off('click').on('click', function (evt) {
                        evt.preventDefault();
                        data.submit();
                    });
                },
                send: function (e, data) {
                    // show a loading spinner because now the form will be submitted to amazon, 
                    // and the file will be directly uploaded there, via an iframe in the background. 
                    $('#loading').show();
                },
                fail: function (e, data) {
                    console.log('fail');
                    console.log(data);
                },
                done: function (event, data) {
                    // here you can perform an ajax call to get your documents to display on the screen.
                    //alert('complete');
                    // hide the loading spinner that we turned on earlier.
                    $('#loading').hide();
                },
                progress: function (e, data) {
                    var progress = parseInt(data.loaded / data.total * 100, 10);
                    $('.progress').css('width', progress + '%');
                }
            });

当我检查互联网上可用的 blueimp 文档时,它无法将文件从浏览器分块上传到 AWS S3。

有一个更好的库可用于将文件直接从浏览器分块上传到 AWS S3。

https://github.com/TTLabs/EvaporateJS

我用 2 GB 的文件对其进行了测试,它工作正常。

几天后我会添加一个工作示例。