Skip to content
开发文档
能力中心
应用市场
WebOffice
开发者后台

请求文件上传信息

上传文件分为三个步骤: 📌 1、使用请求文件上传信息接口,获取上传文件所需信息 2、通过接口响应体的上传信息,构建 HTTP 请求,上传实体文件到云存储 3、使用提交文件上传完成接口,提交上传完成信息

请求说明

请求地址https://openapi.wps.cn/v7/drives/{drive_id}/files/{parent_id}/request_upload
请求方法POST
签名方式KSO-1
权限要求查询和管理文件(应用授权) kso.file.readwrite
查询和管理文件(用户授权) kso.file.readwrite

请求头(Header)

Header 名称参数类型是否必填说明
Content-Typestring使用:application/json
X-Kso-DatestringRFC1123 格式的日期,例: Wed, 23 Jan 2013 06:43:08 GMT
X-Kso-AuthorizationstringKSO-1 签名值,详见《签名方法》
Authorizationstring授权凭证,格式为:Bearer {access_token}

路径参数(Path)

名称参数类型说明
drive_idstring驱动盘 id
parent_idstring父目录 id

请求体(Body)

名称参数类型是否必填说明
file_idstring更新上传时指定文件 id
hashesarray[object]文件哈希信息,用于完整性校验
∟ sumstring哈希结果
∟ typestring[enum]哈希类型
sha256 md5 s2s
internalboolean是否内部上传,默认为 false
namestring文件名(更新文件时忽略),需要携带文件名后缀,例如文件 1.doc
on_name_conflictstring[enum]新建时文件名冲突行为处理方式(公网目前支持 renameoverwrite)
fail:失败;rename:重命名;overwrite:覆盖;replace:替换
parent_patharray[string]文件父路径,不存在则创建
sizeinteger文件大小
storage_base_domainstringwps.cn / kdocs.cn,签发的存储网关地址会根据 base_domain 优先匹配 \*.wps.cn/\*.kdocs.cn
为空会根据请求的 host 优先选择关联的 base_domain。
(注意目前有些旧文件未被存储网关托管,针对这些文件的下载此参数可能失效)
upload_scenestring[enum]文件上传场景,默认是 normal_upload
normal_upload:团队上传;roaming_upload:漫游上传

请求地址示例

[POST] https://openapi.wps.cn/v7/drives/{drive_id}/files/{parent_id}/request_upload

请求体示例

json
{
  "file_id": "string",
  "hashes": [
    {
      "sum": "string",
      "type": "string[enum]"
    }
  ],
  "internal": false,
  "name": "string",
  "on_name_conflict": "string[enum]",
  "parent_path": [
    "string"
  ],
  "size": 0,
  "storage_base_domain": "string",
  "upload_scene": "string[enum]"
}

响应体

名称参数类型说明
codeinteger响应代码。非 0 表示失败,参照《状态码说明》
msgstring响应信息
dataobject响应数据
∟ store_requestobject第二步上传请求信息
∟ ∟ methodstring[enum]存储上传方法
仅会返回 PUT
∟ ∟ urlstring存储上传使用的地址
公网环境下,当返回地址一级域名为金山办公管理域名(wps.cn 或 kdocs.cn)时,调用上传地址时需要带与调用此申请地址接口相同的登录凭据(wpssid 或 ksosid)和设备信息凭据(wpsua 或 kso 设备信息采集方案,若调用申请地址接口时未提供则无需提供),存储网关会进行校验
∟ upload_idstring上传标识
moreobject更多的错误信息

响应体示例

json
{
  "code": 0,
  "msg": "string",
  "data": {
    "store_request": {
      "method": "string",
      "url": "string"
    },
    "upload_id": "string"
  }
}
回到旧版