md5-util 拓展spark-md5,支持计算网络文件md5的小插件


计算本地文件md5

SparkMD5.file(file,function(md5){
  //如果文件读取失败,md5为null
  console.log(md5)
})


返回结果:


计算网络文件md5

/*
 使用了XMLHttpRequest responseType = 'blob',在部分浏览器存在兼容性问题,
 已知ios uc浏览器及安卓5.1.1系统浏览器中返回blob不正确,导致md5计算错误,
 如果要计算网络文件请慎用,或者计算已知md5的网络文件,对比md5是否准确,考量使用。
*/

SparkMD5.file(url,function(md5){
  //网络请求失败、文件读取失败等,md5为null
  console.log(md5)
})

//提前验证md5
var rightMd5 = '2b07d9a0a5f3918d876f5acfb8416401';
SparkMD5.file('https://weijhfly.github.io/favicon.ico',function(md5){
  if(md5 && md5 !== rightMd5){
    console.log('md5计算错误,请停止使用');
  }
})



返回结果:


SparkMD5官方示例

SparkMD5.hash('hello world')
//"5eb63bbbe01eeed093cb22bb8f5acdc3"
更多官方示例查看SparkMD5