Skip to content

cosSliceUploadWithSts

使用 COS STS 凭证通过 cos-js-sdk 分片上传文件。

前置依赖

依赖参数

参数名类型说明
deps.COSCosConstructorcos-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
}

参数

参数名类型必填说明
fileBlob待上传文件
stsOssCosStsCredentialPayloadCOS STS 凭证与对象元信息
contentTypestring上传 Content-Type;空字符串时不设置头
onProgress(loaded, total) => void上传进度回调
depsCosSliceUploadWithStsDeps环境依赖

返回值

类型说明
Promise<void>上传成功 resolve;失败由 SDK 或调用方抛出

工作原理

  1. 用 STS 字段构造 getAuthorization 回调并 new deps.COS(...)
  2. 调用 sliceUploadFile 上传 Body,按需附带 ContentType
  3. 将 COS onProgress 映射为 (loaded, total) 并转发给 onProgress