vue获取文件hash值

2022-06-27 10:48:17 浏览数 (1)

获取文件hash有什么用呢?当然是用来实现分片上传和断点续传和秒传功能的,这里要用到spark-md5,没有的话先安装下

1、导入spark-md5

代码语言:javascript复制
import SparkMD5 from 'spark-md5';

2、获取文件hash的方法

代码语言:javascript复制
getFileHash(file){
      return new Promise( resolve => {
        const reader = new FileReader();
        reader.readAsArrayBuffer(file);
        reader.onload = ev => {
          let buffer = ev.target.result,
              spark = new SparkMD5.ArrayBuffer(),
              HASH,
              suffix;
          spark.append(buffer);
          HASH = spark.end();
          suffix = file.name.substring(file.name.lastIndexOf(".")   1);
          resolve({
            buffer,
            HASH,
            suffix,
            filename: `${HASH}.${suffix}`
          });
        };
      });
    },

3、使用方式

代码语言:javascript复制
//获取文件hash值以及后缀名
      let {
        HASH,
        suffix
      } = await this.getFileHash(file);

0 人点赞