文档首页/ 对象存储服务 OBS/ API参考/ API/ 多段操作/ 列举已上传未合并的段
更新时间:2025-08-13 GMT+08:00
分享

列举已上传未合并的段

功能介绍

用户可以通过本接口查询一个未合并任务所属的所有段信息,了解完整的分段上传流程请参见分段上传。此接口列举的各个段大小和分段上传的各个段大小一致。

请求消息样式

GET /ObjectName?uploadId=uploadid&max-parts=max&part-number-marker=marker HTTP/1.1 
Host: bucketname.obs.cn-north-4.myhuaweicloud.com 
Date: date 
Authorization: auth

请求消息参数

该请求通过请求消息参数指定多段上传任务以及列出的段数量,参数的具体含义如表1所示。

表1 请求消息参数

参数名称

是否必选

参数类型

描述

uploadId

String

参数解释:

多段上传任务的ID。

约束限制:

不涉及

取值范围:

长度大于0且不超过32的字符串。

默认取值:

不涉及

max-parts

Integer

参数解释:

指定单次返回请求中包含段的最大数目。单位:个。

约束限制:

不涉及

取值范围:

[1,1000],当超出范围时,按照默认的1000进行处理。

默认取值:

1000

part-number

-marker

Integer

参数解释:

指定列举的起始位置,只有上传段的段号数目大于该参数的段会被列出。

约束限制:

不涉及

取值范围:

从1到10000的整数。

默认取值:

不涉及

encoding-type

String

参数解释:

对响应中的Key进行指定类型的编码。如果Key包含xml 1.0标准不支持的控制字符,可通过设置encoding-type对响应中的Key进行编码。

约束限制:

不涉及

取值范围:

url

默认取值:

不涉及

请求消息头

该请求使用公共消息头,具体请参考表3

请求消息元素

该请求消息中不使用消息元素。

响应消息样式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
HTTP/1.1 status_code
Date: date
Content-Length: length

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<ListPartsResult xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/"> 
    <Bucket>BucketName</Bucket> 
    <Key>object</Key> 
    <UploadId>uploadid</UploadId> 
    <Initiator> 
        <ID>id</ID>  
    </Initiator> 
    <Owner> 
        <ID>ownerid</ID> 
    </Owner> 
    <StorageClass>storageclass</StorageClass> 
    <PartNumberMarker>partNmebermarker</PartNumberMarker> 
    <NextPartNumberMarker>nextPartnumberMarker</NextPartNumberMarker> 
    <MaxParts>maxParts</MaxParts> 
    <IsTruncated>true</IsTruncated> 
    <Part> 
        <PartNumber>partNumber</PartNumber> 
        <LastModified>modifiedDate</LastModified> 
        <ETag>etag</ETag> 
        <Size>size</Size> 
    </Part> 
</ListPartsResult>

响应消息头

该请求的响应消息使用公共消息头,具体请参考表1

响应消息元素

该请求的响应通过消息元素返回已上传了的段信息,元素的具体含义如表2所示。

表2 响应消息元素

参数名称

参数类型

描述

ListPartsResult

Container

参数解释:

保存列举段请求结果的容器,ListPartsResult是Bucket、Key、UploadId、Initiator、Owner、StorageClass、PartNumberMarker、NextPartNumberMarker、MaxParts、IsTruncated、Part的父节点。

取值范围:

请详见ListPartsResult响应消息元素说明

表3 ListPartsResult响应消息元素说明

参数名称

参数类型

描述

Bucket

String

参数解释:

桶名称。

取值范围:

长度为3~63的字符串。

EncodingType

String

参数解释:

对象名的编码类型。如果请求中设置了encoding-type,那响应中的Key会被编码。

取值范围:

url

Key

String

参数解释:

对象名称。

取值范围:

长度大于0且不超过1024的字符串。

UploadId

String

参数解释:

上传任务ID。

取值范围:

长度大于0且不超过32的字符串。

Initiator

Container

参数解释:

多段上传任务的创建者,Initiator是ID的父节点。

取值范围:

请详见Initiator响应消息元素说明

Owner

Container

参数解释:

段的所有者,Owner是ID的父节点。

取值范围:

请详见Owner响应消息元素说明

StorageClass

String

参数解释:

存储类型。

取值范围:

  • STANDARD(标准存储)
  • WARM(低频访问存储)
  • COLD(归档存储)
  • DEEP_ARCHIVE(深度归档存储)

PartNumberMarker

Integer

参数解释:

本次列举结果的上传段的段号起始位置。

取值范围:

[1,10000]

NextPartNumberMarker

Integer

参数解释:

如果本次没有返回全部结果,响应请求中将包含NextPartNumberMarker元素,用于标明接下来请求的PartNumberMarker值。

取值范围:

[1,10000]

MaxParts

Integer

参数解释:

单次返回请求中包含段的最大数目。单位:个。

取值范围:

[1,10000]

IsTruncated

Boolean

参数解释:

标明是否本次返回的列举段结果列表被截断。

取值范围:

true:表示本次没有返回全部段。

false:表示本次已经返回了全部段。

Part

Container

参数解释:

保存段信息的容器,Part是PartNumber、LastModified、ETag、Size的父节点。

取值范围:

请详见Part响应消息元素说明

表4 Initiator响应消息元素说明

参数名称

参数类型

描述

ID

String

参数解释:

多段任务创建者的urn。格式为domainID/{domainId}:userID/{userId}。

取值范围:

不涉及

表5 Owner响应消息元素说明

参数名称

参数类型

描述

ID

String

参数解释:

多段任务创建者的DomainId,格式为{domainId}。

取值范围:

不涉及

表6 Part响应消息元素说明

参数名称

参数类型

描述

PartNumber

Integer

参数解释:

已上传段的编号。

取值范围:

[1,10000]

LastModified

Date

参数解释:

段上传的时间。时间格式为ISO8601的格式。

例如:2018-01-01T00:00:00.000Z。

取值范围:

不涉及

ETag

String

参数解释:

已上传段内容的ETag,是段内容的唯一标识,用于段合并时校验数据一致性。

取值范围:

不涉及

Size

Integer

参数解释:

已上传段大小。

取值范围:

不涉及

错误响应消息

  1. 如果AccessKey或签名无效,OBS返回403 Forbidden,错误码为AccessDenied。
  2. 如果请求的桶不存在,OBS返回404 Not Found,错误码为NoSuchBucket。
  3. 如果请求的多段上传任务不存在,OBS返回404 Not Found,错误码为NoSuchUpload。
  4. OBS判断用户DomainId是否具有指定桶的读权限,如果没有权限,则OBS返回403 Forbidden,错误码为AccessDenied。

其他错误已经包含在表2中。

请求示例

1
2
3
4
5
6
GET /object02?uploadId=00000163D40171ED8DF4050919BD02B8 HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 05:20:35 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:xkABdSrBPrz5yqzuZdJnK5oL/yU=

响应示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 8DF400000163D40C099A04EF4DD1BDD9
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSK71fr+hDnzB0JBvQC1B9+S12AWxC41
Content-Type: application/xml
Date: WED, 01 Jul 2015 05:20:35 GMT
Content-Length: 888

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ListPartsResult xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
  <Bucket>test333</Bucket>
  <Key>obj2</Key>
  <UploadId>00000163D40171ED8DF4050919BD02B8</UploadId>
  <Initiator>
    <ID>domainID/domainiddomainiddomainiddo000008:userID/useriduseriduseriduseridus000008</ID>
  </Initiator>
  <Owner>
    <ID>domainiddomainiddomainiddo000008</ID>
  </Owner>
  <StorageClass>STANDARD</StorageClass>
  <PartNumberMarker>0</PartNumberMarker>
  <NextPartNumberMarker>2</NextPartNumberMarker>
  <MaxParts>1000</MaxParts>
  <IsTruncated>false</IsTruncated>
  <Part>
    <PartNumber>1</PartNumber>
    <LastModified>2018-06-06T07:39:32.522Z</LastModified>
    <ETag>"b026324c6904b2a9cb4b88d6d61c81d1"</ETag>
    <Size>2058462721</Size>
  </Part>
  <Part>
    <PartNumber>2</PartNumber>
    <LastModified>2018-06-06T07:41:03.344Z</LastModified>
    <ETag>"3b46eaf02d3b6b1206078bb86a7b7013"</ETag>
    <Size>4572</Size>
  </Part>
</ListPartsResult>

相关文档