【发布时间】:2015-02-10 16:48:20
【问题描述】:
我必须从前端上传一个文件并计算文件的 md5 哈希值。 我尝试使用 crypto.js 生成 md5,但对于图像,它给了我错误的 md5。 我看到了一个名为 onlinemd5.com 的网站,这正是我所需要的。
谁能帮助我如何使用 javascript 计算文件(文本文件、图像、视频等)的 md5 哈希值? 是否可以从http://onlinemd5.com 下载代码并实现它?
注意:我尝试了How to calculate md5 hash of a file using javascript 中的一些建议,但没有用。
$scope.upld = function(element){
$scope.files = element.files;
var file = $scope.files[0];
var reader = new FileReader();
reader.onload = function(){
$scope.md5_val = CryptoJS.MD5(reader.result);
$scope.upload_file();
$scope.$apply();
};
reader.readAsBinaryString(file);
};
crypto.js 没有正确计算图像 md5。我没有尝试 sparkmd5 js。
【问题讨论】:
-
请描述您具体尝试了什么以及如何没有成功。例如:首先我运行了 a,但它抛出了错误,所以我尝试了 b,但结果是 c,我没有期待,因为我正在寻找像 d 这样的模式。
-
请详细说明“但没用”...
-
很抱歉,我应该在我的问题中发布代码。请在下面找到它
-
我尝试使用webtoolkit.info/javascript-md5.html的js并从图片文件夹上传了一个名为koala.jpg的图像文件。它将 md5 计算为“4f413976a7a4b93d19c06e94fae0899d”,因为我从 onlinemd5.com 获得了不同的哈希值
-
我尝试在 - github.com/sagens42/md5asm 使用 js。它给了我 md5 值的空字符串。这是代码: var calcS = new md5(reader.result); $scope.md5Value = calcS.getMd5();
标签: javascript file-upload md5