Skip to content

上传数据

Upload

上传数据

这里整理上传管理器和上传工具中最常用的数据格式,包括上传元数据、创建素材参数和浏览器/构建要求。

快速索引

类型 / 能力用途
SXMeta上传任务元数据,记录上传状态、目标目录、素材创建选项等。
uploadOSS服务层上传工具,处理 OSS token、上传进度和可选创建素材。
CreateAssetOptions上传后创建业务素材记录的参数。
浏览器与构建要求SharedWorker、BroadcastChannel、worker URL、生产路径配置。

SXMeta

@mbjia/upload-manager 上传元数据:

ts
type SXMeta = {
  uploadingItemId: string
  uploadType?: string
  dir?: string
  dirName?: string
  handle?: FileSystemFileHandle
  rotate?: boolean
  analysis?: boolean
  createAsset?: boolean
  waitForTranscoding?: boolean
  errorStatus?: number
  status?: number
  assetId?: string
  id?: string
  asset?: any
  error?: any
  hide?: number
}
字段类型说明
uploadingItemIdstring上传项 id。
uploadTypestring上传类型。
dirstring目录 id。
dirNamestring目录名称。
handleFileSystemFileHandle文件系统句柄。
rotateboolean是否旋转。
analysisboolean是否进行素材分析。
createAssetboolean是否创建业务素材记录。
waitForTranscodingboolean是否等待转码。
errorStatusnumber错误状态。
statusnumber上传状态。
assetIdstring创建后的素材 id。
errorany上传错误信息。

uploadOSS

ts
uploadOSS(fileList, {
  createAssetOptions: {
    assetType: 50,
    dirId: '0',
    useTranscodingAsset: true,
    rotate: false,
  },
  uploadType: 'mbjia_user_file',
  onProgress(percent, status, abort) {
    console.log(percent)
  },
})

CreateAssetOptions

ts
type CreateAssetOptions = {
  assetType: number
  dirId?: string | number
  ossName?: string
  hide?: boolean
  useTranscodingAsset?: boolean
  rotate?: boolean
}
字段类型必填说明
assetTypenumber素材类型。
dirIdstring | number目标目录 id。
ossNamestringOSS 文件名。
hideboolean是否隐藏。
useTranscodingAssetboolean是否使用转码素材。
rotateboolean是否旋转。

浏览器与构建要求

  • 支持 SharedWorker
  • 支持 BroadcastChannel
  • 构建工具能处理 new URL('./SharedWorker', import.meta.url)
  • 生产混剪项目配置 process.env.sharedWorkerPath

MBJIA Tools 文档