0.3.1 • Published 6 months ago

@quansitech/file-md5-wasm v0.3.1

Weekly downloads
-
License
-
Repository
-
Last release
6 months ago

htmlInput file md5 calculate

Compute the MD5 signature of a file. If the file is larger than 40MB, only the first and last 10MB, as well as the middle 10MB, are read to calculate the MD5. Therefore, even when computing large files, the process will be extremely fast.

Install

npm add @quansitech/file-md5-wasm

Usage

use in ES6

import init, {calc_file_hash} from '@quansitech/file-md5-wasm';

const upload = async (file: File) => {
    await init();
    const hashId = await calc_file_hash(file);
    console.log(hashId);
}

use in browser

Download the contents of the 'dist' folder. When loading 'index.js' on the webpage, the 'calc_file_hash' function will be automatically added to 'window' object.

<html>
<head>
  <title>文件哈希校验</title>
</head>
<body>
  <input type="file" id="fileInput" />
  <button onclick="handleFile()">上传文件</button>
  <div id="result"></div>

  <script src="./index.js"></script>
  <script>
    function handleFile() {
        const fileInput = document.getElementById("fileInput");
        const start = new Date().getTime();
        window.calc_file_hash(fileInput.files[0]).then(function(res){
          const end = new Date().getTime();
          console.log(`文件Md5: ${res}`);
          console.log(`耗时: ${end - start}ms`);
        });
    }
  </script>
</body>
</html>

how to build

wasm-pack build --target web

publish to npm

cd pkg
npm publish

build index.js for browser

npm run build