使用Blob API以块的形式上传文件 . 在这里,我想检查blob的md5校验和 . 当我尝试下面的代码时它对文本文件工作正常,但它为二进制文件返回不同的值 .
var reader = new FileReader();
reader.readAsBinaryString(blob);
reader.onloadend = function () {
var mdsum = CryptoJS.MD5(reader.result);
console.log("MD5 Checksum",mdsum.toString());
};
如何为所有类型的文件正确计算blob的md5校验和?
1 回答
使用以下代码创建正确的md5哈希:
Update (a bit simpler):
请务必在CryptoJS库中包含
core.js
,lib-typedarrays.js
( important )和md5.js
组件 .请参阅此fiddle以获取完整示例(由于原始访问控制,它不适用于小提琴,请在本地服务器上尝试) .