![js-standard-style](https://camo.githubusercontent.com/69491412f56d5c52f0e9f0abddb17033b28539d38e5d05378521222236a83bb1/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f64652532307374796c652d7374616e646172642d627269676874677265656e2e737667)
![Dependency Status](https://camo.githubusercontent.com/69e56cc2a8084a34bea7d23f486b142988a8e398ad46c85971a93efd50af2ff1/68747470733a2f2f646570656e64656e637963692e636f6d2f6769746875622f44617669644b6b2f71696e69752d75706c6f616465722f6261646765)
![LICENSE](https://camo.githubusercontent.com/ba013d45f56a600255309c357b64f8bdf7cabb072ed3cabef171fcdbae789179/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d416e74692532303939362d626c75652e737667)
- 支持分块分片上传
- 支持断点续传
- 支持 base64 文件上传
import { Uploader } from 'qiniup'
// Docs: https://doc.esdoc.org/github.com/DavidKk/qiniu-uploader/class/src/uploader.js~Uploader.html#instance-constructor-constructor
let qiniup = new Uploader()
let params = { token: 'generated by sdk' }
// Docs: https://doc.esdoc.org/github.com/DavidKk/qiniu-uploader/class/src/uploader.js~Uploader.html#instance-method-upload
qiniup.upload(file, params, { resumingByFileSize: 4 * 1024 * 1024 /** 默认也为 4M, 如果大于4M则使用分块分片(同时支持断点续传)上传 */ }, function (error) {
if (error) {
console.log(error)
return
}
// upload success, somthing todo...
})
let qiniup = new Uploader({
tokenGetter (callback) {
// do some async or sync request logic to get token
callback(null, token)
// or
// 同时也可以设置过期时间(在 0.2.0 版本以上才适用)
callback(null, { token, expire })
}
})
let progress = (event) => {
console.log('当前进度为', event.loaded)
console.log('总进度为', event.total)
console.log('进程百分比', event.loaded / event.total)
console.log('上传事件类型', event.type)
console.log('当前上传进程', event.process)
console.log('所有已注册上传进程', event.processes)
}
// `resumingByFileSize = 0` 表示一定使用分段上传
qiniup.upload(file, params, { resumingByFileSize: 0, progress }, function () {
// do something...
})