列举已上传的段
功能说明
通过分段上传任务的ID,列举指定桶中已上传的段。
方法定义
1. ObsClient->listParts(array $parameter) 2. ObsClient->listPartsAsync(array $parameter, callable $callback)
请求参数
|
字段名 |
类型 |
约束 |
说明 |
|---|---|---|---|
|
Bucket |
string |
必选 |
桶名。 |
|
Key |
string |
必选 |
对象名。 |
|
UploadId |
string |
必选 |
分段上传任务的ID。 |
|
MaxParts |
integer |
可选 |
列举已上传段的返回结果最大段数目,即分页时每一页中段数目。 |
|
PartNumberMarker |
integer |
可选 |
列举已上传段的起始位置,只有Part Number大于该参数的段会被列出。 |
返回结果
|
字段名 |
类型 |
说明 |
|
|---|---|---|---|
|
HttpStatusCode |
integer |
HTTP状态码。 |
|
|
Reason |
string |
HTTP文本描述。 |
|
|
RequestId |
string |
OBS服务端返回的请求ID。 |
|
|
Bucket |
string |
桶名。 |
|
|
Key |
string |
对象名。 |
|
|
UploadId |
string |
分段上传任务的ID。 |
|
|
PartNumberMarker |
string |
列举已上传段的起始位置,与请求中的该参数对应。 |
|
|
NextPartNumberMarker |
string |
下次列举已上传段请求的起始位置。 |
|
|
MaxParts |
string |
列举已上传段的返回结果最大段数目,与请求中的该参数对应。 |
|
|
IsTruncated |
boolean |
表明本次请求是否返回了全部结果,“true”表示没有返回全部结果;“false”表示已返回了全部结果。 |
|
|
Parts |
indexed array |
已上传段列表。 |
|
|
PartNumber |
integer |
段号。 |
|
|
LastModified |
string |
段的最后上传时间。 |
|
|
ETag |
string |
段的ETag值。 |
|
|
Size |
integer |
段的大小。 |
|
|
Initiator |
associative array |
分段上传任务的创建者。 |
|
|
ID |
string |
创建者的DomainId。 |
|
|
DisplayName |
string |
创建者的名字。 |
|
|
Owner |
associative array |
和Initiator相同,代表分段上传任务的创建者。 |
|
|
ID |
string |
创建者的DomainId。 |
|
|
DisplayName |
string |
创建者的名字。 |
|
|
StorageClass |
string |
待分段上传对象的存储类型。 |
|
代码样例
try {
$resp = $obsClient->listParts( [
'Bucket' => 'bucketname',
'Key' => 'objectkey',
'UploadId' => 'uploadid',
'MaxParts' => 10
] );
printf ( "RequestId:%s\n", $resp ['RequestId'] );
printf ( "Initiator[ID]:%s\n", $resp ['Initiator']['ID'] );
printf ( "Initiator[DisplayName]:%s\n", $resp ['Initiator']['DisplayName'] );
foreach ($resp['Parts'] as $index => $part){
printf("Parts[%d]\n", $index + 1);
printf ( "PartNumber:%s\n", $part['PartNumber'] );
printf ( "LastModified:%s\n", $part['LastModified'] );
printf ( "ETag:%s\n", $part['ETag'] );
printf ( "Size:%s\n", $part['Size'] );
}
} catch ( Obs\Common\ObsException $obsException ) {
printf ( "ExceptionCode:%s\n", $obsException->getExceptionCode () );
printf ( "ExceptionMessage:%s\n", $obsException->getExceptionMessage () );
}