我的要求是通过浏览器上传大文件(最高50GB)。所以我使用JQuery file upload plugin以较小的块上传这些大文件。
现在我必须为每个块计算MD5校验和,以避免从浏览器到服务器的数据损坏问题。
JQuery中是否有任何插件可以计算除了Google CryptoJS实用程序之外的blob块的校验和?
答案 0 :(得分:1)
您可以尝试js-md5。
这是一个获取文件校验和的在线demo。
您可以像这样输入arraybuffer
var total; // total file size
var batch = 1024 * 1024; // batch size
var start = 0;
var current = md5;
var asyncUpdate = function () {
if (start < total) {
var end = Math.min(start + batch, total);
current = current.update(arrayBuffer.slice(start, end));
start = end;
setTimeout(asyncUpdate);
} else {
var hash = current.hex(); // result
}
}
asyncUpdate();