【分块上传】签发分块上传地址
适用版本>=v7.0.2405a.20240509
接口说明:【分块上传】第二步,注意事项可参考文件传输概述
请求说明
| 请求地址 | 配置域名+/graph+/v7/multipart_upload_tasks/{upload_id}/sign |
|---|---|
| 请求方法 | POST |
| 签名方式 | WPS-4签名/WPS-4-GM签名(配置域名+/graph不参与签名) |
| 权限要求 | 更新文件(用户授权) kso.file.write 应用管理文件(应用授权) kso.appdrive.file.write |
请求头(Header)
| 名称 | 是否必填 | 说明 |
|---|---|---|
| Content-Type | 是 | 固定为: application/json |
| Wps-Docs-Date | 是 | 取当前时间,示例: Wed, 23 Jan 2013 06:43:08 GMT |
| Wps-Docs-Authorization | 是 | 计算方法参考签名说明 |
| Authorization | 是 | 授权凭证,格式为: Bearer {access_token} |
路径参数(Path)
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| upload_id | string | 是 | 上传标识,从初始化分块上传的响应中获取,长度不超过1024位 |
请求体(Body)
| 名称 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| parts_info | object[] | 是 | <= 1024 items |
| ∟ hash | object | 否 | 文件分块的hash信息,用于签名和完整性校验 |
| ∟ ∟ sum | string | 是 | 哈希结果,长度不超过1024位 |
| ∟ ∟ type | string | 是 | 哈希类型,仅支持sha256 |
| ∟ number | integer | 是 | 分块编号,从1开始 |
请求体示例
{
"parts_info": [
{
"hash": {
"sum": "string",
"type": "sha256"
},
"number": 1
}
]
}响应体(Response)
| 名称 | 类型 | 说明 |
|---|---|---|
| data | object | 签发分块上传地址返回体 |
| ∟ store_requests | object[] | 第二步各块上传请求信息,<= 1024 items |
| ∟ ∟ part_number | integer | 分块编号 |
| ∟ ∟ store_request | object | 第二步上传请求信息 |
| ∟ ∟ ∟ body_params | object[] | 存储时需要带入到form-data中的信息,<= 1024 items |
| ∟ ∟ ∟ ∟ name | string | 名称,长度不超过1024位 |
| ∟ ∟ ∟ ∟ value | string | 值,长度不超过1024位 |
| ∟ ∟ ∟ headers | object[] | 存储上传时需要携带的头部信息,<= 1024 items |
| ∟ ∟ ∟ ∟ name | string | 名称,长度不超过1024位 |
| ∟ ∟ ∟ ∟ value | string | 值,长度不超过1024位 |
| ∟ ∟ method | string | 存储上传方法(应用文档仅返回PUT) |
| ∟ ∟ url | string | 存储上传使用的地址 |
| ∟ store_response_keys | object | 第二步上传响应中的回传字段,调用方需要根据这些字段从第二步响应中取出回传信息,并在第三步按照文件分块的顺序进行回传 |
| ∟ ∟ body_keys | string[] | 响应体中的回传字段,<= 1024 items,长度不超过1024位 |
| ∟ ∟ header_keys | string[] | 响应头中的回传字段,<= 1024 items,长度不超过1024位 |
| code | integer | 错误码,参照《错误码说明》 |
| msg | string | 状态信息 |
| detail | string | 详细信息 |
响应体示例
{
"data": {
"store_requests": [
{
"part_number": 0,
"store_request": {
"body_params": [
{
"name": "string",
"value": "string"
}
],
"headers": [
{
"name": "string",
"value": "string"
}
],
"method": "string",
"url": "string"
}
}
],
"store_response_keys": {
"body_keys": [
"string"
],
"header_keys": [
"string"
]
}
},
"code": 0,
"detail": "string",
"msg": "string"
}