@shencom/oss-browser
v1.0.0
Published
oss browser management
Downloads
2
Readme
@shencom/oss-browser
使用说明
介绍
oss-browser
通用 OSS sts 授权方式,限时在浏览器直接操作 oss;
此工具继承 @shencom/oss-core
包
基于 rollup/typescript
构建,ESModule
;
安装
yarn add -D @shencom/oss-browser
# or
yarn add -D git+https://gitlab.shencom.cn/web/tools/oss-browser.git#master
初始化
- 类型
interface Options {
timeout?: number;
bucket?: string;
region?: string;
accessKeySecret: string;
accessKeyId: string;
stsToken: string,
}
new OSS(ops: Options): OSS
- 示例
import { OSS } from '@shencom/oss-browser';
const CLIENT = new OSS({
timeout: 1000,
bucket: 'string',
region: 'string',
accessKeySecret: 'string',
accessKeyId: 'string',
stsToken: 'string',
});
方法
list
- 说明: 获取 oss 文件列表
- 类型:
OSSCore.list(ossPaths: string[] | string, returnType?: 'all', options?: AliOSS.ListV2ObjectsQuery): Promise<Pick<AliOSS.ListObjectResult, 'objects' | 'prefixes'>[]>
- 参数:
ossPaths
: oss 路径returnType?
: 返回类型,默认:all
options?
: oss 配置,当returnType=all
时生效
- 示例:
const list = await CLIENT.list(ossPaths, returnType, options);
delete
interface DeleteOption {
ossPaths: Arrayable<string>;
beforeEach?: (paths: Arrayable<string>) => void | boolean | Promise<boolean | void>;
}
- 说明: 删除 oss 文件
- 类型:
OSSCore.delete(options: DeleteOption): Promise<void>
- 参数:
options.ossPaths
: oss 文件路径options.beforeEach
: 删除前
- 示例:
await CLIENT.delete(options);
put
interface PutOptions<O> {
/** 对象名称存储在OSS上 */
ossPath: string;
/** String|Buffer|ReadStream|File(仅支持浏览器)|Blob(仅支持浏览器) 对象本地路径、内容缓冲区或 ReadStream 内容实例在 Node、Blob 和 html5 File 中使用 */
file: any;
options?: O;
uploadOptions?: ((file: any, defaultOptions: Partial<O>) => Partial<O>) | Partial<O>;
}
type Upload = PutOptions<PutObjectOptions>;
- 说明: 上传文件
- 类型:
OSSCore.put(config: Upload): Promise<AliOSS.PutObjectResult>
- 参数: 参考上面类型
- 示例:
await CLIENT.put(config);
multipartUpload
interface PutOptions<O> {
/** 对象名称存储在OSS上 */
ossPath: string;
/** String|Buffer|ReadStream|File(仅支持浏览器)|Blob(仅支持浏览器) 对象本地路径、内容缓冲区或 ReadStream 内容实例在 Node、Blob 和 html5 File 中使用 */
file: any;
options?: O;
uploadOptions?: ((file: any, defaultOptions: Partial<O>) => Partial<O>) | Partial<O>;
}
type MultipartUpload = PutOptions<MultipartUploadOptions>;
- 说明: 上传文件
- 类型:
OSSCore.multipartUpload(config: MultipartUpload): Promise<AliOSS.MultipartUploadResult>
- 参数: 参考上面类型
- 示例:
await CLIENT.multipartUpload(config);