cosSliceUploadWithSts
使用 COS STS 凭证通过 cos-js-sdk 分片上传文件。
前置依赖
依赖参数
| 参数名 | 类型 | 说明 |
|---|---|---|
deps.COS | CosConstructor | cos-js-sdk-v5 构造器 |
环境要求
- cos-js-sdk-v5: 浏览器 COS 分片上传 SDK
bash
npm install cos-js-sdk-v5函数签名
typescript
function cosSliceUploadWithSts(
file: Blob,
sts: OssCosStsCredentialPayload,
contentType: string,
onProgress: ((loaded: number, total: number) => void) | undefined,
deps: CosSliceUploadWithStsDeps,
): Promise<void>
interface CosSliceUploadWithStsDeps {
COS: CosConstructor
}参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
file | Blob | 是 | 待上传文件 |
sts | OssCosStsCredentialPayload | 是 | COS STS 凭证与对象元信息 |
contentType | string | 是 | 上传 Content-Type;空字符串时不设置头 |
onProgress | (loaded, total) => void | 否 | 上传进度回调 |
deps | CosSliceUploadWithStsDeps | 是 | 环境依赖 |
返回值
| 类型 | 说明 |
|---|---|
Promise<void> | 上传成功 resolve;失败由 SDK 或调用方抛出 |
工作原理
- 用 STS 字段构造
getAuthorization回调并new deps.COS(...)。 - 调用
sliceUploadFile上传Body,按需附带ContentType。 - 将 COS
onProgress映射为(loaded, total)并转发给onProgress。