1.0.0 • Published 3 years ago
tiny-ali-oss v1.0.0
tiny-ali-oss (forked from Alex1990/tiny-oss)
缩减版ali-oss SDK, 提供上传及获取文件带签名访问链接
Installation
Npm
npm i -S tiny-ali-oss
Yarn
yarn add tiny-ali-oss
Usage
Basic
import TinyAliOSS from 'tiny-ali-oss';
const oss = new TinyAliOSS({
accessKeyId: 'your accessKeyId',
accessKeySecret: 'your accessKeySecret',
stsToken: 'security token',
region: 'oss-cn-beijing',
bucket: 'your bucket'
});
const blob = new Blob(['hello world'], { type: 'text/plain' });
// Upload
oss.put('hello-world', blob);
Upload progress
获取上传进度(xhr.onprogress)
// Upload progress
oss.put('hello-world', blob, {
progress (process) {
console.log('process:', process + '%');
}
});
Upload abort
取消上传
// Upload abort
let abortFn = null;
oss.put('hello-world', blob, {
xhrInit(xhr, abort) {
abortFn = abort;
}
});
cancelBtn.onclick = () => {
abortFn && abortFn();
}
Download url
获取带签名访问链接
const url = oss.signatureUrl('img/1.png');
document.querySelector('img').src = url;
// Or
downloadBtn.onclick = () => {
window.location.href = url;
}
More options or methods see API.
Compatibility
This package depends on some modern Web APIs, such as Blob, Uint8Array, FileReader, Promise.
浏览器兼容.
- Chrome >= 20
- Edge >= 12
- IE >= 10
- Firefox >= 4
- Safari >= 8
- Opera >= 11
- Android >= 4.4.4
- iOS >= 8
For IE and low version FireFox, you should import a promise polyfill, such as es6-promise.
API
new TinyAliOSS(options)
options
Please check Browser.js offical document.
- accessKeyId
- accessKeySecret
- stsToken
- bucket
- endpoint
- region
- secure
- timeout
- policy
put(objectName, blob, options)
上传
Arguments
- objectName (String): 路径+文件名.
- blob (Blob|File): input.file.
- options (Object)
Return
- (Promise)
putSymlink(objectName, targetObjectName)
获取软连接.
Arguments
- objectName (String): 路径+文件名.
- targetObjectName (String): 目标文件名.
Return
- (Promise)
signatureUrl(objectName, options)
获取文件带签名访问链接
Arguments
- objectName (String): 路径+文件名.
- options (Object):
- options.expires (Number): 访问超时时间(秒).
Return
- (String)
LICENSE
MIT
1.0.0
3 years ago