阅读941 返回首页    go 新东方


GetService__关于Service操作_API 参考_对象存储 OSS-阿里云

对于服务地址作Get请求可以返回请求者拥有的所有Bucket,其中“/”表示根目录。

请求语法

GET / HTTP/1.1
Host: oss.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

请求参数

GetService(ListBucket)时,可以通过prefix,marker和max-keys对list做限定,返回部分结果。

名称 描述
prefix 限定返回的bucket name必须以prefix作为前缀,可以不设定,不设定时不过滤前缀信息
数据类型:字符串
默认值:无
marker 设定结果从marker之后按字母排序的第一个开始返回,可以不设定,不设定时从头开始返回
数据类型:字符串
默认值:无
max-keys 限定此次返回bucket的最大数,如果不设定,默认为100,max-keys取值不能大于1000
数据类型:字符串
默认值:100

响应元素(Response Elements)

名称 描述
ListAllMyBucketsResult 保存Get Service请求结果的容器。
类型:容器
子节点: Owner, Buckets
父节点:None
Prefix 本次查询结果的前缀,当bucket未全部返回时才有此节点
类型:字符串
父节点:ListAllMyBucketsResult
Marker 标明这次GetService(ListBucket)的起点,当bucket未全部返回时才有此节点
类型:字符串
父节点:ListAllMyBucketsResult
MaxKeys 响应请求内返回结果的最大数目,当bucket未全部返回时才有此节点
类型:字符串
父节点:ListAllMyBucketsResult
IsTruncated 指明是否所有的结果都已经返回:“true”表示本次没有返回全部结果;“false”表示本次已经返回了全部结果。当bucket未全部返回时才有此节点。
类型:枚举字符串
有效值:true、false
父节点:ListAllMyBucketsResult
NextMarker 表示下一次GetService(ListBucket)可以以此为marker,将未返回的结果返回。当bucket未全部返回时才有此节点。
类型:字符串
父节点:ListAllMyBucketsResult
Owner 用于存放Bucket拥有者信息的容器。
类型:容器
父节点:ListAllMyBucketsResult
ID Bucket拥有者的用户ID。
类型:字符串
父节点:ListAllMyBucketsResult.Owner
DisplayName Bucket拥有者的名称 (目前和ID一致)。
类型:字符串
父节点:ListAllMyBucketsResult.Owner
Buckets 保存多个Bucket信息的容器。
类型:容器
子节点:Bucket
父节点:ListAllMyBucketsResult
Bucket 保存bucket信息的容器.
类型:容器
子节点:Name, CreationDate, Location
父节点:ListAllMyBucketsResult.Buckets
Name Bucket名称。
类型:字符串
父节点:ListAllMyBucketsResult.Buckets.Bucket
CreateDate Bucket创建时间
类型:时间 (格式:yyyy-mm-ddThh:mm:ss.timezone, e.g., 2011-12-01T12:27:13.000Z)
父节点:ListAllMyBucketsResult.Buckets.Bucket
Location Bucket所在的数据中心
类型:字符串
父节点:ListAllMyBucketsResult.Buckets.Bucket
ExtranetEndpoint Bucket访问的外网域名
类型:字符串
父节点:ListAllMyBucketsResult.Buckets.Bucket
IntranetEndpoint 同区域ECS访问Bucket的内网域名
类型:字符串
父节点:ListAllMyBucketsResult.Buckets.Bucket

细节分析

  1. GetService这个API只对验证通过的用户有效。
  2. 如果请求中没有用户验证信息(即匿名访问),返回403 Forbidden。错误码:AccessDenied。
  3. 当所有的bucket都返回时,返回的xml中不包含Prefix、Marker、MaxKeys、IsTruncated、NextMarker节点,如果还有部分结果未返回,则增加上述节点,其中NextMarker用于继续查询时给marker赋值。

示例

请求示例Ⅰ

GET / HTTP/1.1
Date: Thu, 15 May 2014 11:18:32 GMT
Host: oss-cn-hangzhou.aliyuncs.com
Authorization: OSS nxj7dtl1c24jwhcyl5hpvnhi:COS3OQkfQPnKmYZTEHYv2qUl5jI=

返回示例Ⅰ

HTTP/1.1 200 OK
Date: Thu, 15 May 2014 11:18:32 GMT
Content-Type: application/xml
Content-Length: 556
Connection: keep-alive
Server: AliyunOSS
x-oss-request-id: 5374A2880232A65C23002D74

<?xml version="1.0" encoding="UTF-8"?>
<ListAllMyBucketsResult>
  <Owner>
    <ID>51264</ID>
    <DisplayName>51264</DisplayName>
  </Owner>
  <Buckets>
    <Bucket>
      <CreationDate>2015-12-17T18:12:43.000Z</CreationDate>
      <ExtranetEndpoint>oss-cn-shanghai.aliyuncs.com</ExtranetEndpoint>
      <IntranetEndpoint>oss-cn-shanghai-internal.aliyuncs.com</IntranetEndpoint>
      <Location>oss-cn-shanghai</Location>
      <Name>app-base-oss</Name>
    </Bucket>
    <Bucket>
      <CreationDate>2014-12-25T11:21:04.000Z</CreationDate>
      <ExtranetEndpoint>oss-cn-hangzhou.aliyuncs.com</ExtranetEndpoint>
      <IntranetEndpoint>oss-cn-hangzhou-internal.aliyuncs.com</IntranetEndpoint>
      <Location>oss-cn-hangzhou</Location>
      <Name>atestleo23</Name>
    </Bucket>
  </Buckets>
</ListAllMyBucketsResult>

请求示例Ⅱ

GET /?prefix=xz02tphky6fjfiuc&max-keys=1 HTTP/1.1
Date: Thu, 15 May 2014 11:18:32 GMT
Host: oss-cn-hangzhou.aliyuncs.com
Authorization: OSS nxj7dtl1c24jwhcyl5hpvnhi:COS3OQkfQPnKmYZTEHYv2qUl5jI=

返回示例Ⅱ

HTTP/1.1 200 OK
Date: Thu, 15 May 2014 11:18:32 GMT
Content-Type: application/xml
Content-Length: 545
Connection: keep-alive
Server: AliyunOSS
x-oss-request-id: 5374A2880232A65C23002D75

<?xml version="1.0" encoding="UTF-8"?>
<ListAllMyBucketsResult>
  <Prefix>xz02tphky6fjfiuc</Prefix>
  <Marker></Marker>
  <MaxKeys>1</MaxKeys>
  <IsTruncated>true</IsTruncated>
  <NextMarker>xz02tphky6fjfiuc0</NextMarker>
  <Owner>
    <ID>ut_test_put_bucket</ID>
    <DisplayName>ut_test_put_bucket</DisplayName>
  </Owner>
  <Buckets>
    <Bucket>
      <CreationDate>2014-05-15T11:18:32.000Z</CreationDate>
      <ExtranetEndpoint>oss-cn-hangzhou.aliyuncs.com</ExtranetEndpoint>
      <IntranetEndpoint>oss-cn-hangzhou-internal.aliyuncs.com</IntranetEndpoint>
      <Location>oss-cn-hangzhou</Location>
      <Name>xz02tphky6fjfiuc0</Name>
    </Bucket>
  </Buckets>
</ListAllMyBucketsResult>

最后更新:2016-11-23 17:16:07

  上一篇:go Bucket权限控制__访问控制_API 参考_对象存储 OSS-阿里云
  下一篇:go PutBucket__关于Bucket的操作_API 参考_对象存储 OSS-阿里云