GetBucketInfo介面用於查看bucket的相關資訊。

可查看內容包含如下:

  • 建立時間
  • 外網訪問Endpoint
  • 內網訪問Endpoint
  • bucket的擁有者資訊
  • bucket的ACL(AccessControlList)

請求文法

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

響應元素(Response Elements)

表 1. 響應元素
名稱 類型 描述
BucketInfo 容器 保存Bucket資訊內容的容器

子節點:Bucket節點

父節點:無

Bucket 容器 保存Bucket具體資訊的容器

父節點:BucketInfo節點

CreationDate 時間 Bucket建立時間。時間格式 2013-07-31T10:56:21.000Z

父節點:BucketInfo.Bucket

ExtranetEndpoint 字元串 Bucket訪問的外網網域名稱

父節點:BucketInfo.Bucket

IntranetEndpoint 字元串 同區域ECS訪問Bucket的內網網域名稱

父節點:BucketInfo.Bucket

Location 字元串 Bucket所在資料中心的區域

父節點:BucketInfo.Bucket

Name 字元串 Bucket名字

父節點:BucketInfo.Bucket

Owner 容器 用於存放Bucket擁有者資訊的容器。

父節點:BucketInfo.Bucket

ID 字元串 Bucket擁有者的用戶ID。

父節點:BucketInfo.Bucket.Owner

DisplayName 字元串 Bucket擁有者的名稱 (目前和ID一致)。

父節點:BucketInfo.Bucket.Owner

AccessControlList 容器 儲存ACL資訊的容器

父節點:BucketInfo.Bucket

Grant 枚舉字元串 Bucket的ACL許可權。

有效值:privatepublic-readpublic-read-write

父節點:BucketInfo.Bucket.AccessControlList

細節分析

  • 如果Bucket不存在,返回404錯誤。錯誤碼:NoSuchBucket。
  • 只有Bucket的擁有者才能查看Bucket的資訊,否則返回403 Forbidden錯誤,錯誤碼:AccessDenied。
  • 請求可以從任何一個OSS的Endpoint發起。

樣本

請求樣本:

Get /?bucketInfo HTTP/1.1
Host: oss-example.oss.aliyuncs.com  
Date: Sat, 12 Sep 2015 07:51:28 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc: BuG4rRK+zNhH1AcF51NNHD39zXw=

成功獲取Bucket資訊的返回樣本:

HTTP/1.1 200
x-oss-request-id: 534B371674E88A4D8906008B
Date: Sat, 12 Sep 2015 07:51:28 GMT
Connection: keep-alive
Content-Length: 531  
Server: AliyunOSS

<?xml version="1.0" encoding="UTF-8"?>
<BucketInfo>
  <Bucket>
    <CreationDate>2013-07-31T10:56:21.000Z</CreationDate>
    <ExtranetEndpoint>oss-cn-hangzhou.aliyuncs.com</ExtranetEndpoint>
    <IntranetEndpoint>oss-cn-hangzhou-internal.aliyuncs.com</IntranetEndpoint>
    <Location>oss-cn-hangzhou</Location>
    <Name>oss-example</Name>
    <Owner>
      <DisplayName>username</DisplayName>
      <ID>271834739143143</ID>
    </Owner>
    <AccessControlList>
      <Grant>private</Grant>
    </AccessControlList>
  </Bucket>
</BucketInfo>

獲取不存在的Bucket資訊的返回樣本:

HTTP/1.1 404 
x-oss-request-id: 534B371674E88A4D8906009B
Date: Sat, 12 Sep 2015 07:51:28 GMT
Connection: keep-alive
Content-Length: 308  
Server: AliyunOSS

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>NoSuchBucket</Code>
  <Message>The specified bucket does not exist.</Message>
  <RequestId>568D547F31243C673BA14274</RequestId>
  <HostId>nosuchbucket.oss.aliyuncs.com</HostId>
  <BucketName>nosuchbucket</BucketName>
</Error>

獲取沒有許可權訪問的Bucket資訊的返回樣本:

HTTP/1.1 403
x-oss-request-id: 534B371674E88A4D8906008C
Date: Sat, 12 Sep 2015 07:51:28 GMT
Connection: keep-alive
Content-Length: 209  
Server: AliyunOSS

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>AccessDenied</Code>
  <Message>AccessDenied</Message>
  <RequestId>568D5566F2D0F89F5C0EB66E</RequestId>
  <HostId>test.oss.aliyuncs.com</HostId>
</Error>