jancd/qiniu-developer_ShareGPT huggingface dataset:
human: 如何处理七牛云的对象存储分片上传 v1 版

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > 分片上传 v1 版

#  分片上传 v1 版

最近更新时间: 2020-12-10 20:09:27

分片上传相关的接口：

接口 | 说明   
---|---  
[mkblk](https://developer.qiniu.com/kodo/api/1286/mkblk) | 创建块  
[bput](https://developer.qiniu.com/kodo/api/1251/bput) | 上传片  
[mkfile](https://developer.qiniu.com/kodo/api/1287/mkfile) | 创建文件  
  
目前历史版本 sdk 均使用 v1 版分片上传接口

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储创建块

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v1
版](https://developer.qiniu.com/kodo/api/7443/shard-to-upload) > 创建块

#  创建块

最近更新时间: 2024-06-04 19:06:12

# **描述**

本接口用于为后续分片上传创建一个新的块，同时上传第一片数据。

  

# **请求**

### **请求语法**

    
    
    POST /mkblk/<blockSize> HTTP/1.1
    Host:           <UpHost>
    Content-Type:   application/octet-stream
    Content-Length: <firstChunkSize>
    Authorization:  UpToken <UploadToken>
    
    <firstChunkBinary>
    

  

### **请求参数**

参数名称 | 必填 | 类型 | 说明  
---|---|---|---  
blockSize | 是 | int64 | 块大小，每块均为 4MB，最后一块大小不超过 4MB。  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。
* 后续七牛对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)
* 后续片的上传为上一次上传响应返回的后续上传接收地址  
Content-Type | 是 | 固定为`application/octet-stream`。  
Content-Length | 是 | 第一个片的内容长度，单位为字节。  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于`Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r...`。  
  
  

### **请求内容**

参数名称 | 必填 | 说明  
---|---|---  
firstChunkBinary | 是 | 第一个片的二进制内容  
  
  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
request-headers)。

  

### **响应内容**

名称 | 说明  
---|---  
ctx | 本次上传成功后的块级上传控制信息，用于后续[上传片(bput)](https://developer.qiniu.com/kodo/api/1251/bput)及[创建文件(mkfile)](https://developer.qiniu.com/kodo/api/1287/mkfile)。本字段是只能被七牛服务器解读使用的不透明字段，上传端不应修改其内容。每次返回的 ctx 都只对应紧随其后的下一个上传数据片，上传非对应数据片会返回 701 状态码。例如`"ctx":"U1nAe4qJVwz4dYNslBCNNg...E5SEJJQQ=="`。  
checksum | 上传块 sha1，使用URL安全的Base64编码，客户可通过此字段对上传块的完整性进行校验。例如`"checksum":"wQ-csvpBHkZrhihcytio7HXizco="`。  
crc32 | 上传块 crc32，客户可通过此字段对上传块的完整性进行校验。例如`"crc32":659036110`。  
offset | 下一个上传块在切割块中的偏移。例如`"offset":4194304`。  
host | 后续上传接收地址。例如`"host":"http://upload.qiniup.com"`。  
expired_at | ctx 过期时间，ctx 过期后会删除未完成[创建文件](https://developer.qiniu.com/kodo/api/1287/mkfile)的块数据。例如`"expired_at":1514446175`。  
  
  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

  

# **示例**

### **请求示例**

    
    
    POST /mkblk/4194304 HTTP/1.1
    User-Agent: curl/7.30.0
    Host: upload.qiniup.com
    Accept: */*
    Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r...(过长已省略)
    
    <firstChunkBinary>
    

  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Server: nginx
    Date: Thu, 21 Dec 2017 07:29:35 GMT
    Content-Type: application/json
    Connection: keep-alive
    Cache-Control: no-store
    Content-Length: 340
    X-Log: qtbl.get;RS
    X-Reqid: swEAAMipp-5bIjMT
    
    {
      ctx: "U1nAe4qJVwz4dYNslBCNNgE...PMXE5SEJJQQ==", 
      checksum: "wQ-csvpBHkZrhihcytio7HXizco=", 
      crc32: 659036110, 
      offset: 4194304, 
      host: "http://upload.qiniup.com", 
      expired_at: 1514446175
    }
    

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储上传片

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v1
版](https://developer.qiniu.com/kodo/api/7443/shard-to-upload) > 上传片

#  上传片

最近更新时间: 2024-06-04 19:05:28

# **描述**

上传指定块的一片数据，具体数据量可根据现场环境调整。同一块的每片数据必须串行上传。

  

# **请求**

### **请求语法**

    
    
    POST /bput/<ctx>/<nextChunkOffset> HTTP/1.1
    Host:           <UpHost>
    Content-Type:   application/octet-stream
    Content-Length: <nextChunkSize>
    Authorization:  UpToken <UploadToken>
    
    <nextChunkBinary>
    

使用说明：

  * 可以复用创建块时使用的[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)。
  * 上传凭证将被重新验证，若已过期，可以使用重新生成的凭证。

  

### **请求参数**

参数名称 | 必填 | 类型 | 说明  
---|---|---|---  
ctx | 是 | string | 前一次上传返回的块级上传控制信息。  
nextChunkOffset | 是 | int64 | 当前片在整个块中的起始偏移。  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。
* 七牛对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)
* 后续片的上传为上一次上传响应返回的后续上传接收地址  
Content-Type | 是 | 固定为`application/octet-stream`。  
Content-Length | 是 | 当前片的内容长度，单位为字节。  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于`Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r...`。  
  
  

### **请求内容**

参数名称 | 必填 | 说明  
---|---|---  
nextChunkBinary | 是 | 当前片的二进制内容  
  
  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
request-headers)。

  

### **响应内容**

名称 | 说明  
---|---  
ctx | 本次上传成功后的块级上传控制信息，用于后续[上传片(bput)](https://developer.qiniu.com/kodo/api/1251/bput)及[创建文件(mkfile)](https://developer.qiniu.com/kodo/api/1287/mkfile)。本字段是只能被七牛服务器解读使用的不透明字段，上传端不应修改其内容。每次返回的 ctx 都只对应紧随其后的下一个上传数据片，上传非对应数据片会返回 701 状态码。例如`"ctx":"U1nAe4qJVwz4dYNslBCNNg...E5SEJJQQ=="`。  
checksum | 上传块校验码。例如`"checksum":"wQ-csvpBHkZrhihcytio7HXizco="`。  
crc32 | 上传块 crc32，客户可通过此字段对上传块的完整性进行校验。例如`"crc32":659036110`。  
offset | 下一个上传片在上传块中的偏移。例如`"offset":4194304`。  
host | 后续上传接收地址。例如`"host":"http://upload.qiniup.com"`。  
expired_at | ctx 过期时间，ctx 过期后会删除未完成[创建文件](https://developer.qiniu.com/kodo/api/1287/mkfile)的块数据。例如`"expired_at":1514446175`。  
  
  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储创建文件

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v1
版](https://developer.qiniu.com/kodo/api/7443/shard-to-upload) > 创建文件

#  创建文件

最近更新时间: 2021-11-15 18:00:02

# **描述**

将上传好的所有数据块按指定顺序合并成一个资源文件。

  

# **请求**

### **请求语法**

    
    
    POST /mkfile/<fileSize>/key/<encodedKey>/fname/<encodedFname>/mimeType/<encodedMimeType>/x:user-var/<encodedUserVars> HTTP/1.1
    Host:           <UpHost>
    Content-Type:   text/plain
    Content-Length: <ctxListSize>
    Authorization:  UpToken <UploadToken>
    
    <lastCtxOfBlock1,lastCtxOfBlock2,lastCtxOfBlock3,...,lastCtxOfBlockN>
    

使用说明：

  * 可以复用创建块时使用的上传凭证。
  * 上传凭证将被重新验证，若已过期，可以使用重新生成的凭证。
  * 若参数中指定了资源名，而所用上传策略的[scope](https://developer.qiniu.com/kodo/manual/1206/put-policy#scope)字段中也指定了资源名，且两者不一致，操作将失败且返回 401 状态码。
  * 若参数与上传策略[scope](https://developer.qiniu.com/kodo/manual/1206/put-policy#scope)字段中未指定资源名，则需要使用[insertOnly](https://developer.qiniu.com/kodo/manual/1206/put-policy#put-policy-insert-only)字段，才能达到同名文件上传**不被覆盖** 效果。

  

### **请求参数**

参数名称 | 必填 | 类型 | 说明  
---|---|---|---  
fileSize | 是 | int64 | 资源文件大小，单位字节。  
encodedKey |  | string | 进行[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)后的资源名。若未指定，则使用[saveKey](https://developer.qiniu.com/kodo/manual/1206/put-policy#save-key)；若未指定 saveKey，则使用资源内容的 SHA1 值作为资源名。  
encodedFname |  | string | 进行[URL安全的Base64编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)后的文件名称。若未指定，则[魔法变量](https://developer.qiniu.com/kodo/manual/1235/vars#magicvar)中无法使用fname, ext, fprefix。  
encodedMimeType |  | string | 进行[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)后的文件 mimeType。若未指定，则根据文件内容自动检测 mimeType。  
encodedUserVars |  | string | 指定[自定义变量](https://developer.qiniu.com/kodo/manual/1235/vars#xvar)，进行[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)后的 user-var。  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。
* 七牛对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)
* 后续片的上传为上一次上传响应返回的后续上传接收地址  
Content-Type | 是 | 固定为`text/plain`。  
Content-Length | 是 | 所有块的 ctx 及分隔符的总长度，单位为字节。  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于`Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r...`。  
  
  

### **请求内容**

参数名称 | 必填 | 说明  
---|---|---  
lastCtxOfBlock | 是 | 每个数据块最后一个数据片上传后得到的 ctx  
  
  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
request-headers)。

  

### **响应内容**

名称 | 说明  
---|---  
hash | 资源内容的 SHA1 值。  
key | 实际资源名。  
  
  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储分片上传 v2 版

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > 分片上传 v2 版

#  分片上传 v2 版

最近更新时间: 2022-09-22 11:51:06

Multipart Upload相关的接口：

接口 | 说明  
---|---  
[initiateMultipartUpload](https://developer.qiniu.com/kodo/api/6365/initialize-multipartupload) | 通知服务端开启分块上传任务,得到全局唯一任务 UploadId  
[uploadPart](https://developer.qiniu.com/kodo/api/6366/upload-part) | 分块上传数据，需指定的任务 UploadId  
[completeMultipartUpload](https://developer.qiniu.com/kodo/api/6368/complete-multipart-upload) | 完成整个文件的分块上传，需指定的任务 UploadId  
[abortMultipartUpload](https://developer.qiniu.com/kodo/api/6367/abort-multipart-upload) | 中止分块上传任务，并且删除已经上传的块，需指定的任务 UploadId  
[listParts](https://developer.qiniu.com/kodo/api/6858/listparts) | 列举指定 UploadId 所属的所有已经上传成功 Part  
  
目前支持分片上传 v2 版 SDK 情况如下：

SDK | 版本  
---|---  
[JavaScript SDK](https://developer.qiniu.com/kodo/sdk/1283/javascript) | v3.0.0 及以上  
[Flutter SDK](https://developer.qiniu.com/kodo/sdk/7598/flutter-sdk) | 所有版本  
[Rust SDK](https://developer.qiniu.com/kodo/sdk/11853/rust) | 所有版本  
[Android SDK](https://developer.qiniu.com/kodo/sdk/1236/android) | v8.1.0 及以上  
[Objective-C SDK](https://developer.qiniu.com/kodo/sdk/1240/objc) | v8.1.0 及以上  
[Go SDK](https://developer.qiniu.com/kodo/sdk/1238/go) | v7.8.0 及以上  
[Java SDK](https://developer.qiniu.com/kodo/sdk/1239/java) | v7.5.0 及以上  
[Python SDK](https://developer.qiniu.com/kodo/sdk/1242/python) | v7.4.0 及以上  
[C/C++ SDK](https://developer.qiniu.com/kodo/1255/cpp) | v7.1.0 及以上  
[Node.js SDK](https://developer.qiniu.com/kodo/1289/nodejs) | v7.4.0 及以上  
[PHP SDK](https://developer.qiniu.com/kodo/1241/php) | v7.4.0 及以上  
[c# SDK](https://developer.qiniu.com/kodo/sdk/1237/csharp) | v8.0.0 及以上  
  
以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储初始化任务

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v2
版](https://developer.qiniu.com/kodo/api/6364/multipartupload-interface) >
初始化任务

#  初始化任务

最近更新时间: 2024-06-04 19:08:01

# **描述**

使用 Multipart Upload 方式上传数据前，必须先调用 API 来获取一个全局唯一的 UploadId ，后续的块数据通过 uploadPart
API 上传，整个文件完成 completeMultipartUpload API ，已经上传块的删除 abortMultipartUpload API
都依赖该 UploadId 。

  

# **请求**

### **请求语法**

    
    
    POST /buckets/<BucketName>/objects/<EncodedObjectName>/uploads HTTP/1.1
    Host: <UpHost>
    Authorization: UpToken <UploadToken>
    

使用说明：

  * 初始化 Multipart Upload 请求，并不会影响已存在的同名 Object 。
  * 同一个 Object 可以同时拥有不同的 UploadId 。

  

### **请求参数**

参数名称 | 必填 | 说明  
---|---|---  
BucketName | 是 | 空间名称  
EncodedObjectName | 否 | 资源名，EncodedObjectName 需要经过 Base64 编码，如果表示不设置可以使用特殊字符 `~` 。具体可以参照：[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于 Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r…  
  
  

### **请求内容**

该请求操作的请求体为空。

  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
response-headers)。

  

### **响应内容**

名称 | 类型 | 说明  
---|---|---  
uploadId | string | 初始化文件生成的 id  
expireAt | int64 | UploadId 的过期时间 Unix 时间戳，过期之后 UploadId 不可用，固定 7 天有效期，过期后会删除未[完成文件上传](https://developer.qiniu.com/kodo/api/6368/complete-multipart-upload)的块数据  
  
  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

  

# **示例**

### **请求示例**

    
    
    POST /buckets/myBucket/objects/bXlPYmplY3Q=/uploads HTTP/1.1
    Host: up.qiniup.com
    User-Agent: Go-http-client/1.1
    Authorization: UpToken j853F3bLkWl59I5BOkWm6q1Z1mZClpr9Z9CLfDE0:nP7NSSyGo4x3W_nJ8T9X1gJrgpk=
    

  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Content-Length: 2
    Connection: keep-alive
    Content-Type: application/json
    Date: Wed, 18 Dec 2019 17:02:11 GMT
    Server: nginx
    X-Reqid: SFkAAAC8BDebTtsU
    
    {
    	 "uploadId": "5df9ea14834c512b2270234e",
    	 "expireAt": 1576659776
    }
    

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储分块上传数据

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v2
版](https://developer.qiniu.com/kodo/api/6364/multipartupload-interface) >
分块上传数据

#  分块上传数据

最近更新时间: 2021-11-15 18:02:00

# **描述**

初始化一个 Multipart Upload 任务之后，可以根据指定的 EncodedObjectName 和 UploadId 来分 Part 上传数据。

  

# **请求**

### **请求语法**

    
    
    PUT /buckets/<BucketName>/objects/<EncodedObjectName>/uploads/<UploadId>/<PartNumber> HTTP/1.1
    Host: <UpHost>
    Content-Type: application/octet-stream
    Content-MD5: <PartMd5>
    Content-Length: <Size>
    Authorization: UpToken <UploadToken>
    
    
    <PartContent>
    

使用说明：

  * 每一个上传的 Part 都有一个标识它的号码 PartNumber，范围是 1 - 10000，单个 Part大小范围 1 MB - 1 GB。Multipart Upload 要求除最后一个 Part 以外，其他的 Part 大小都要大于等于 1 MB。因不确定是否为最后一个 Part，uploadPart API 并不会立即校验上传 Part 的大小，当 completeMultipartUpload API 调用的时候才会校验。
  * 如果你用同一个 PartNumber 上传了新的数据，那么服务端已有的这个号码的 Part 数据将被覆盖。

  

### **请求参数**

参数名称 | 必填 | 说明  
---|---|---  
BucketName | 是 | 空间名称  
EncodedObjectName | 否 | 资源名，EncodedObjectName 需要经过 Base64 编码。具体可以参照：[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)  
UploadId | 是 | 在服务端申请的 Multipart Upload 任务 id  
PartNumber | 是 | 每一个上传的 Part 都有一个标识它的号码  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于 Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r…  
Content-Type | 是 | 固定为 `application/octet-stream`  
Content-MD5 | 否 | 上传块内容的 md5 值，如果指定服务端会进行校验，不指定不校验  
Content-Length | 是 | 上传块大小，单位字节  
  
  

### **请求内容**

该请求操作的请求体块的内容。

  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
response-headers)。

  

### **响应内容**

名称 | 类型 | 说明  
---|---|---  
etag | string | 上传块内容的 etag ，用来标识块，completeMultipartUpload API 调用的时候作为参数进行文件合成  
md5 | string | 上传块内容的 md5  
  
  

### **响应状态码**

HTTP状态码 | 含义  
---|---  
612 | 目标资源不存在，当请求的 UploadId 不存在或者已经 complete 过的，都会返回 { “error” : “no such uploadId” }  
406 | 服务端校验失败，服务端收到数据与用户指定校验值不一致，当指定 Content-MD5 与服务端收到数据不一致，返回 { “error” : “hash not match” }  
400 | 不符合要求的 PartNumber，会返回 { “error” : “partNum should be set from 1 to 10000” }  
  
  

# **示例**

### **请求示例**

    
    
    PUT /buckets/myBucket/objects/bXlPYmplY3Q=/uploads/myUploadID/1 HTTP/1.1
    Host: up.qiniup.com
    User-Agent: Go-http-client/1.1
    Content-Length: 200
    Authorization: UpToken j853F3bLkWl59I5BOkWm6q1Z1mZClpr9Z9CLfDE0:nP7NSSyGo4x3W_nJ8T9X1gJrgpk=
    

  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Content-Length: 2
    Connection: keep-alive
    Content-Type: application/json
    Date: Wed, 18 Dec 2019 17:02:11 GMT
    Server: nginx
    X-Reqid: SFkAAAC8BDebTtsU
    
    {
    	"etag": "FqvtxHpe3j-rEzkImMUWDsmvu27D",
    	"md5": "4f4acc5d8c71f5fbf04dace00b5360c8"
    }
    

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储终止上传

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v2
版](https://developer.qiniu.com/kodo/api/6364/multipartupload-interface) > 终止上传

#  终止上传

最近更新时间: 2021-11-12 16:29:39

# **描述**

该接口根据 UploadId 终止 Multipart Upload 。

  

# **请求**

### **请求语法**

    
    
    DELETE /buckets/<BucketName>/objects/<EncodedObjectName>/uploads/<UploadId> HTTP/1.1
    Host: <UpHost>
    Authorization: UpToken <UploadToken>
    

使用说明：

  * 当调用该 API 终止 Multipart Upload 后，无法再使用这个 UploadId 做任何操作，已经上传的 Part 数据也会被删除。

  

### **请求参数**

参数名称 | 必填 | 说明  
---|---|---  
BucketName | 是 | 空间名称  
EncodedObjectName | 否 | 资源名，EncodedObjectName 需要经过 Base64 编码。具体可以参照：[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)  
UploadId | 是 | 在服务端申请的 Multipart Upload 任务 id  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。七牛对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于 Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r…  
  
  

### **请求内容**

该请求操作的请求体为空。

  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
response-headers)。

  

### **响应内容**

该请求操作的响应体为空。

  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

  

# **示例**

### **请求示例**

    
    
    DELETE /buckets/myBucket/objects/bXlPYmplY3Q=/uploads/myUploadID/1 HTTP/1.1
    Host: up.qiniup.com
    Authorization: UpToken j853F3bLkWl59I5BOkWm6q1Z1mZClpr9Z9CLfDE0:nP7NSSyGo4x3W_nJ8T9X1gJrgpk=
    

  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Content-Length: 2
    Connection: keep-alive
    Content-Type: application/json
    Date: Wed, 18 Dec 2019 17:02:11 GMT
    Server: nginx
    X-Reqid: SFkAAAC8BDebTtsU
    
    {
    }
    

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储列举已上传分片

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > [分片上传 v2
版](https://developer.qiniu.com/kodo/api/6364/multipartupload-interface) >
列举已上传分片

#  列举已上传分片

最近更新时间: 2021-11-12 16:30:07

# **描述**

API 可列举出指定 UploadId 所属任务所有已经上传成功 Part。

  

# **请求**

### **请求语法**

    
    
    GET /buckets/<BucketName>/objects/<EncodedObjectName>/uploads/<UploadId>?max-parts=<MaxParts>&part-number-marker=<PartNumberMarker> HTTP/1.1
    Host: <UpHost>
    Authorization: UpToken <UploadToken>
    

使用说明：

  * 返回结果按照 PartNumber 升序排列。

  

### **请求参数**

参数名称 | 必填 | 类型 | 说明  
---|---|---|---  
BucketName | 是 | 字符串 | 空间名称  
EncodedObjectName | 否 | 字符串 | 资源名，EncodedObjectName 需要经过 Base64 编码。具体可以参照：[URL 安全的 Base64 编码](https://developer.qiniu.com/kodo/manual/1231/appendix#urlsafe-base64)  
UploadId | 是 | 字符串 | 在服务端申请的 Multipart Upload 任务 id  
max-parts | 否 | 整数 | 响应中的最大 Part 数目。默认值 ：1,000，最大值 ：1,000  
part-number-marker | 否 | 整数 | 指定列举的起始位置，只有 PartNumber 值大于该参数的 Part 会被列出。默认值 ：无  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
Host | 是 | 上传域名。七牛对象存储支持的区域和对应区域上传域名列表见 [存储区域列表](https://developer.qiniu.com/kodo/1671/region-endpoint-fq)  
Authorization | 是 | 该参数应严格按照[上传凭证](https://developer.qiniu.com/kodo/manual/1208/upload-token)格式进行填充，否则会返回 401 错误码。一个合法的 Authorization 值应类似于 Authorization: UpToken QNJi_bYJlmO5LeY08FfoNj9w_r…  
  
  

### **请求内容**

该请求操作的请求体为空。

  

# **响应**

### **响应头**

该请求操作的实现使用了所有操作的公共响应头。有关详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-
response-headers)。

  

### **响应内容**

名称 | 类型 | 说明  
---|---|---  
uploadId | string | 初始化文件生成的 id  
expireAt | int64 | UploadId 的过期时间 Unix 时间戳，过期之后 UploadId 不可用，固定 7 天有效期  
partNumberMarker | int | 下次继续列举的起始位置，0 表示列举结束，没有更多分片  
parts | Array | 已经上传 Part 列表（ 包括 PartNumber（ int ）、调用 uploadPart API服务端返回的 Etag（ string ）、分片大小 Size ( int64 )和分片上传时间 Unix 时间戳 PutTime ( int64 ) )  
  
  

### **响应状态码**

该操作的实现不会返回特殊错误。有关错误和错误代码列表的一般信息，请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-
responses)。

  

# **示例**

### **请求示例**

    
    
    GET /buckets/myBucket/objects/bXlPYmplY3Q=/uploads/myUploadID?max-parts=2  HTTP/1.1
    Host: up.qiniup.com
    Authorization: UpToken j853F3bLkWl59I5BOkWm6q1Z1mZClpr9Z9CLfDE0:nP7NSSyGo4x3W_nJ8T9X1gJrgpk=
    

  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Content-Length: 2
    Connection: keep-alive
    Content-Type: application/json
    Date: Wed, 18 Dec 2019 17:02:11 GMT
    Server: nginx
    X-Reqid: SFkAAAC8BDebTtsU
    
    {
    	"uploadId": "myUploadID",
    	"expireAt": 1590725318,
    	"partNumberMarker": 3,
    	"parts": [
    		{
    			"size": 4,
    			"etag": "FqlKj-XMsZumHEwIc9OR6YeYL7vT",
    			"partNumber": 1,
    			"putTime": 1590725018
    		},
    		{
    			"size": 9,
    			"etag": "FqvtxHpe3j-rEzkImMUWDsmvu27D",
    			"partNumber": 3,
    			"putTime": 1590725019
    		}
    	]
    }
    

以上内容是否对您有帮助？
human: 如何处理七牛云的对象存储资源移动／重命名

gpt: [对象存储](https://developer.qiniu.com/kodo) > API 文档 > [Object
接口](https://developer.qiniu.com/kodo/api/1274/rs) > 资源移动／重命名

#  资源移动／重命名

最近更新时间: 2023-03-02 18:57:57

# **描述**

本接口用于将源空间的指定文件移动到目标空间，或在同一空间内对文件重命名。  
  

# **请求**

### **请求语法**

    
    
    POST /move/<EncodedEntryURISrc>/<EncodedEntryURIDest>/force/<true|false>  
    HTTP/1.1
    Host:           rs.qiniuapi.com
    Content-Type:   application/x-www-form-urlencoded
    X-Qiniu-Date: 20060102T150405Z
    Authorization:  Qiniu <AccessToken>
    

使用说明:

  * 源空间和目标空间必须属于相同账号，不支持跨账号移动文件
  * 文件不支持跨存储区域 move
  * 归档/深度归档存储文件，只有解冻状态才允许调用本接口。move 获得的目标文件为冻结状态。

  

### **请求参数**

参数名称 | 必填 | 说明  
---|---|---  
EncodedEntryURISrc | 是 | 源文件，需要经过 Base64 编码，具体请参考[EncodedEntryURI](https://developer.qiniu.com/kodo/api/1276/data-format)  
EncodedEntryURIDest | 是 | 目标文件，需要经过 Base64 编码，具体请参考[EncodedEntryURI](https://developer.qiniu.com/kodo/api/1276/data-format)  
force | 否 | bool 类型，默认 false。如果目标文件名已被占用，则返回错误码 614，且不做任何覆盖操作；如果指定为 true，会强制覆盖目标文件  
  
  

### **请求头**

头部名称 | 必填 | 说明  
---|---|---  
`Authorization` | 是 | 该参数应严格按照[管理凭证](https://developer.qiniu.com/kodo/manual/1201/access-token)格式进行填充，否则会返回401错误码一个合法的Authorization值应类似于：`Qiniu QNJi_bYJlmO5LeY08FfoNj9w_r7...`  
其他 |  | 该请求操作的实现使用了所有操作的公共请求头。详情请查阅[公共请求头](https://developer.qiniu.com/kodo/api/3924/common-request-headers)  
  
  

### **请求内容**

该请求操作的请求体为空。  
  

# **响应**

### **响应语法**

    
    
    HTTP/1.1 200 OK
    Content-Type: application/json
    Cache-Control: no-store
    

  

### **响应头**

头部名称 | 必填 | 说明  
---|---|---  
Content-Type | 是 | 正常情况下该值将被设为 `application/json`，表示返回 JSON 格式的文本信息。  
其他 |  | 该请求实现使用了所有操作的公共响应头。详细信息，请查阅[公共响应头](https://developer.qiniu.com/kodo/api/3924/common-request-headers)。  
  
  

### **响应内容**

如果请求成功，不返回任何内容。  
如果请求失败，返回包含如下内容的 JSON 字符串（已格式化，便于阅读）：

    
    
    {
        "error":   "<errMsg    string>",
    }
    

字段名称 | 必填 | 说明  
---|---|---  
error | 是 | 与 HTTP 状态码对应的消息文本  
  
  

### **响应状态码**

HTTP状态码 | 含义  
---|---  
200 | 移动成功  
400 | 请求报文格式错误  
401 | 管理凭证无效  
403 | 禁止操作  
当归档存储文件未解冻完成调用接口会返回`403 ArchiveUnrestored {"error":"archive unrestored"}`  
当深度归档存储文件未解冻完成调用接口会返回`403 DeepArchiveUnrestored {"error":"deep archive
unrestored"}`  
599 | 服务端操作失败  
612 | 待移动文件不存在  
614 | 目标文件已存在  
其他错误码 | 请查阅[错误响应](https://developer.qiniu.com/kodo/api/3928/error-responses)  
  
如遇 599 错误，请将完整错误信息（包括所有 HTTP 响应头部）[提交工单
__](https://support.qiniu.com/tickets/category)给我们。

  

# **示例**

### **请求示例**

    
    
    POST /move/bmV3ZG9jczpmaW5kX21hbi50eHQ=/bmV3ZG9jczpmaW5kLm1hbi50eHQ= HTTP/1.1
    User-Agent: curl/7.30.0
    Host: rs.qiniuapi.com
    Accept: */*
    X-Qiniu-Date: 20060102T150405Z
    Authorization: Qiniu u8WqmQu1jH21kxpIQmo2LqntzugM1VoHE9_pozCU:2LJIG...(过长已省略)
    

_注：要在`Authorization`头部的`<AccessToken>`前添加`Qiniu`和半角空格。_  
  

### **响应示例**

    
    
    HTTP/1.1 200 OK
    Server: nginx/1.0.8
    Date: Mon, 02 Jan 2006 15:04:05 GMT
    Content-Type: application/json
    Connection: keep-alive
    Content-Length: 0
    X-Reqid: wxIAAD3btw-v3TwT
    

以上内容是否对您有帮助？