SparkMD5 浏览器使用MD5

本文介绍如何使用SparkMD5库在浏览器环境中进行MD5哈希计算,通过链接提供了详细资源。
摘要由CSDN通过智能技术生成

https://github.com/satazor/js-spark-md5

 

document.getElementById('file').addEventListener('change', function () {
    var blobSlice = File.prototype.slice || File.prototype.mozSlice || File.prototype.webkitSlice,
        file = this.files[0],
        chunkSize = 2097152,                             // Read in chunks of 2MB
        chunks = Math.ceil(file.size / chunkSize),
        currentChunk = 0,
        spark = new SparkMD5.ArrayBuffer(),
        fileReader = new FileReader();

    fileReader.onload = function (e) {
        console.log('read chunk nr', currentChunk + 1, 'of', chunks);
        spark.append(e.target.result);                   // Append array buffer
        currentChunk++;

        if (currentChunk < chunks) {
            loadNext();
        } else {
            console.log('finished loading');
            console.info('computed hash', spark.end());  // Compute hash
        }
    };

    fileReader.onerror = function () {
        console.warn('oops, something went wrong.');
    };

    function loadNext() {
        var start = currentChunk * chunkSize,
            end = ((start + chunkSize) >= file.size) ? file.size : start + chunkSize;

        fileReader.readAsArrayBuffer(blobSlice.call(file, start, end));
    }

    loadNext();
});
vue的sparkmd5是一个非常方便的插件,用于生成文件的MD5值。它很容易使用,只需要按照以下步骤: 1. 首先,我们需要安装sparkmd5插件。可以通过在项目目录下运行以下命令进行安装: ``` npm install spark-md5 ``` 2. 在需要使用sparkmd5的组件中,引入sparkmd5: ```javascript import sparkMd5 from 'spark-md5'; ``` 3. 可以通过以下代码生成文件的MD5值: ```javascript generateFileMd5(file) { return new Promise((resolve, reject) => { const fileReader = new FileReader(); const spark = new sparkMd5.ArrayBuffer(); fileReader.onload = e => { spark.append(e.target.result); const md5 = spark.end(); resolve(md5); }; fileReader.onerror = error => { reject(error); }; fileReader.readAsArrayBuffer(file); }); } ``` 上述代码中,通过FileReader来读取文件,将读取到的文件内容使用sparkmd5进行处理,最后生成文件的MD5值。 4. 在需要获取文件MD5值的地方,调用上面定义的generateFileMd5方法: ```javascript const file = document.getElementById('fileInput').files[0]; generateFileMd5(file) .then(md5 => { console.log('文件MD5值:', md5); }) .catch(error => { console.error('获取MD5值失败:', error); }); ``` 上述代码中,通过getElementById获取到文件输入框,并且获取选中的文件,然后调用generateFileMd5方法获取文件的MD5值。 总结:通过以上几个步骤,我们可以很方便地使用vue的sparkmd5插件来生成文件的MD5值。可以将以上代码集成到vue项目中,实现文件MD5值的生成和使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值