【发布时间】:2015-03-19 18:51:54
【问题描述】:
我正在使用jquery-filedrop 和 python/flask 将文件上传到我服务器上的上传文件夹。
但是,每当我选择一个大文件 (~80MB+) 时,浏览器选项卡 (chrome) 就会立即崩溃。
查看the code 和自述文件似乎使用HTML5 FileReader() 来处理文件上传。
如果我通过更改 these lines 来获取文件的一小部分:
reader.onloadend = !opts.beforeSend ? send : function (e) {
opts.beforeSend(files[fileIndex], fileIndex, function () { send(e); });
};
reader.readAsDataURL(files[fileIndex]);
到
reader.onloadend = !opts.beforeSend ? send : function (e) {
opts.beforeSend(files[fileIndex].slice(0, 1048576), fileIndex, function () { send(e); });
};
reader.readAsDataURL(files[fileIndex].slice(0, 1048576));
然后我可以通过只从每个文件上传 1MB 来让它运行而不会出现错误,所以我猜这是读入完整文件时的内存问题。
如何将其设置为遍历文件的小块并分别上传?或者,有没有更好的解决方法?
【问题讨论】:
-
kongaraju.blogspot.in/2012/07/…试试这个,你就很容易理解了
标签: javascript jquery python html jquery-plugins