@open-node/uploader

Huge file upload by chunk

Usage no npm install needed!

<script type="module">
  import openNodeUploader from 'https://cdn.skypack.dev/@open-node/uploader';
</script>

README

@open-node/uploader

大文件分片上传,客户端SDK

npm i @open-node/uploader --save

Usage

const axios = require("axios");
const Uploader = require("./uploader");

const main = async () => {
  const headers = {
    "X-Auth-Token": "thisisatoken",
    "X-Auth-AppId": "i03n111cgy"
  };
  const uploader = new Uploader(axios, "/api_v1/app/files/slices", headers);
  uploader.changeOpt("chunkSize", 2 * 1024 * 1024);

  const input = document.getElementById("myfile");
  input.onchange = async e => {
    console.log(e);
    const file = await uploader.upload(
      e.target.files[0],
      console.log.bind(console, "Progress changed log")
    );
    console.log("Upload file success: %o", file);
  };
};

main();

Table of Contents

Uploader

Parameters

  • axios object axios 发起请求库包
  • url string 上传地址
  • headers
  • token string 身份认证信息,会通过头信息 X-Auth-Token 提交

Returns Uploader Instance

md5

计算文件MD5值

Parameters

  • file File HTML5 选择文件后的对象

Returns string 文件md5 hash值

upload

执行文件分片上传

Parameters

  • file File HTML5 选择后的文件对象
  • changed Function 上传进度百分比变化调用函数

Returns Response 服务端上传完毕返回值

changeOpt

读取/修改设置

Parameters

  • key string 设置项目
  • value any 设置的值

Returns void