大对象分块接口

List Multipart Uploads

描述

List Multipart Uploads 可以罗列出所有执行中的 Multipart Upload 事件,即已经被初始化 的 Multipart Upload 但是未被 Complete 或者 Abort 的 Multipart Upload 事件。NOS 返回的罗列 结果中最多会包含 1000 个 Multipart Upload 信息。如果想指定 NOS 返回罗列结果内Multipart Upload信息的数目,可以在请求中添加max-uploads参数。另外,NOS 返回罗列结果中的 IsTruncated元素标明是否还有其他的 Multipart Upload。

语法

GET /?uploads HTTP/1.1
HOST: ${BucketName}.${endpoint}
Date: ${date}
Authorization: ${signature}

请求头定义

参数描述是否必须
key-marker指定某一 uploads key,只有大于该 key-marker 的才会被列出
类型: String
No
max-uploads最多返回 max-uploads 条记录
类型: 数字
默认:1000 取值:[0-1000]
No

响应元素

元素描述
ListMultipartUploadsResult响应容器元素
类型:容器
子节点:Bucket,KeyMarker,Upload,NextKeyMarker, owner
Bucket对象的桶
类型:字符串
父节点:ListMultipartUploadsResult
NextKeyMarker作为后续查询的 key-marker
类型:String 父节点:ListMultipartUploadsResult
IsTruncated是否截断,如果因为设置了limit导致不是所有的数据集都返回了,则该值设置为 true
类型:Boolean
父节点: ListMultipartUploadsResult
Upload类型:容器
子节点:Key,UploadId 父节点:ListMultipartUploadsResult
Key对象的 Key
类型:字符串 父节点:Upload
UploadId分块上传操作的 ID
类型String 父节点:Upload
ID对象拥有者的 ID
类型: String
父节点:Owner
DisplayName对象的拥有者
类型: String
父节点: Owner
OwnerID
父节点:Upload
StorageClass存储级别
类型: String
父节点: Upload
Initiated该分块上传操作被初始化的时间
类型:Date
父节点: Upload
ListMultipartUploadsResult.Prefix当请求中包含了 prefix 参数时,响应中会填充这一 prefix
类型:String
父节点: ListMultipartUploadsResult

示例

Request

GET /?uploads&HTTP/1.1
HOST: ${BucketName}.${endpoint}
Date: Mon,1 Nov 2010 20:34:56 GTM
Authorization: ${signature}

Response

HTTP/1.1 200 OK
x-nos-request-id: 17b21e42ac11000001390ab891440240
Date: Mon, 1 Feb 2012 20:34:56 GMT
Content-Length: 197
Connection: close
Server: NOS

<?xml version="1.0" encoding="UTF-8"?>
<ListMultipartUploadsResult>
  <Bucket>Bucket</Bucket>
  <NextKeyMarker>my-movie.m2ts</NextKeyMarker>
  <Upload>
    <Key>my-divisor</Key>
    <UploadId>XMgbGlrZSBlbHZpbmcncyBub3QgaGF2aW5nIG11Y2ggbHVjaw</UploadId>
    <Owner>
      <ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID>
      <DisplayName>OwnerDisplayName</DisplayName>
    </Owner>
    <StorageClass>STANDARD</StorageClass>
  </Upload>
  <Upload>
    <Key>my-movie.m2ts</Key>
    <UploadId>VXBsb2FkIElEIGZvciBlbHZpbcyBteS1tb3ZpZS5tMnRzIHVwbG9hZA</UploadId>
    <Owner>
      <ID>b1d16700c70b0b05597d7acd6a3f92be</ID>
      <DisplayName>OwnerDisplayName</DisplayName>
    </Owner>
    <StorageClass>STANDARD</StorageClass>
  </Upload>
</ListMultipartUploadsResult>

细节描述

  1. 如果Bucket不存在,返回404 no content错误。错误码:NoSuchBucket。
  2. 只有Bucket的拥有者才能操作大对象分块接口。非Bucket拥有者执行此类操作将返回403 Forbidden错误。错误码:AccessDenied。
  3. 通过key-marker和max-uploads参数,能够遍历到Bucket内有多少未完成的多块上传。
  4. 返回未完成多块上传按照Key字典序排列。