PUT Bucket操作可以用來:
創建一個新的Bucket。
對已有Bucket的Bucket ACL進行修改。
對數據位置進行修改,但是不能修改索引位置(香港節點不支持)。
只有根用戶和具有PUT Bucket權限的子用戶才能創建Bucket。
Bucket的命名規范如下:
Bucket名稱必須全局唯一。
Bucket名稱長度介于3到63字節之間。
Bucket名稱只能由小寫字母、數字、短橫線(-)和點(.)組成。
Bucket名稱可以由一個或者多個小節組成,小節之間用點(.)隔開,各個小節需要:
只能包含小寫字母、數字和短橫線(-)。
必須以小寫字母或者數字開始。
必須以小寫字母或者數字結束。
Bucket名稱不能是IP地址形式(如192.162.0.1)。
Bucket名稱不能是一組或多組“數字.數字”的組合。
Bucket名稱中不能包含雙點(..)、橫線點(-.)和點橫線(.-)。
不允許使用非法敏感字符,例如暴恐涉政相關信息等。
注意
香港節點只有請求頭,沒有請求體。
請求語法
PUT / HTTP/1.1
Host: BucketName.oos-cn.ctyunapi.cn
Content-Type: application/xml; charset=utf-8
Content-Length: length
Date: date
Authorization: SignatureValue
<createbucketconfiguration xmlns="//s3.amazonaws.com/doc/2006-03-01/">
<metadatalocationconstraint>
<location>MetadataRegion</location>
</metadatalocationconstraint>
<datalocationconstraint>
<type>RegionType</type>
<locationlist>
<location>DataRegion</location>
<location>DataRegion</location>
</locationlist>
<schedulestrategy>Strategy</schedulestrategy>
</datalocationconstraint>
</createbucketconfiguration>請求參數
| 名稱 | 描述 | 是否必須 |
|---|---|---|
| x-amz-acl | 設置Bucket的ACL(Access Control List)。 類型:字符串。 有效值:
默認值為private。 | 否 |
請求元素
注意
香港節點不支持下列請求元素。
| 名稱 | 描述 | 是否必須 |
|---|---|---|
| CreateBucketConfiguration | 設置Bucket索引位置和數據位置的容器。 類型:容器。 子節點:MetadataLocationConstraint、DataLocationConstraint。 | 否 |
| MetadataLocationConstraint | 設置Bucket的索引位置。 類型:容器。 父節點:CreateBucketConfiguration。 子節點:Location。 | 創建Bucket的時候非必填。修改Bucket ACL或數據位置的時候不能填寫。 |
| DataLocationConstraint | 設置Bucket的數據位置。 類型:容器。 父節點:CreateBucketConfiguration。 子節點:Type、LocationList、ScheduleStrategy。 | 否 |
| Type | 數據位置的類型。 類型:枚舉。 取值:
默認值:Local 父節點:DataLocationConstraint。 | 否 |
| LocationList | 指定的數據位置。 類型:容器。 父節點:DataLocationConstraint。 子節點:Location。 | 否 |
| Location | 索引位置或數據位置。 類型:字符串。 取值:
默認值:無 父節點:MetadataLocationConstraint或Locationlist。 | 否 |
| ScheduleStrategy | 指定數據時的調度策略。 類型:枚舉。 取值:
默認值:Allowed。 父節點:DataLocationConstraint。 | 否 |
請求示例1
請求創建一個名叫docs的Bucket,索引位置設置為WuHu,數據位置設置為優先本地,Bucket權限設置為私有。
PUT / HTTP/1.1
Host: docs.oos-cn.ctyunapi.cn
Content-Length:200
Content-Type: application/xml;charset=utf-8
Date: Mon, 03 Sep 2012 12:00:00 GMT
x-amz-acl: private
Authorization: SignatureValue
<CreateBucketConfiguration xmlns="//s3.amazonaws.com/doc/2006-03-01/">
<MetadataLocationConstraint>
<Location>WuHu</Location>
</MetadataLocationConstraint>
<DataLocationConstraint>
<Type>Local</Type>
</DataLocationConstraint>
</CreateBucketConfiguration>響應示例1
HTTP/1.1 200 OK
x-amz-request-id: c962c64b9f294f7b14877a897e8b8d9352545d484a4c4e5052
Date: Mon, 03 Sep 2012 12:00:00 GMT
Location: /docs
Content-Length: 0
Server: CTYUN請求示例2
請求創建一個名叫docs的Bucket,索引位置設置為WuHu,數據位置設置為蕪湖、成都,調度策略是允許OOS自動調度。
PUT / HTTP/1.1
Host: docs.oos-cn.ctyunapi.cn
Content-Length:200
Content-Type: application/xml; charset=utf-8
Date: Mon, 03 Sep 2012 12:00:00 GMT
Authorization: SignatureValue
<CreateBucketConfiguration xmlns="//s3.amazonaws.com/doc/2006-03-01/">
<MetadataLocationConstraint>
<Location>WuHu</Location>
</MetadataLocationConstraint>
<DataLocationConstraint>
<Type>Specified</Type>
<LocationList>
<Location>WuHu</Location>
<Location>ChengDu</Location>
</LocationList>
<ScheduleStrategy>Allowed</ScheduleStrategy>
</DataLocationConstraint>
</CreateBucketConfiguration>響應示例2
HTTP/1.1 200 OK
x-amz-request-id: c962c64b9f294f7b14877a897e7b8d9352545d484a4c4e6879
Date: Mon, 03 Sep 2012 12:00:00 GMT
Location: /docs
Content-Length: 0
Server: CTYUN請求示例3
修改數據位置為就近 。
PUT / HTTP/1.1
Host: docs.oos-cn.ctyunapi.cn
Date: Sun, 29 Sep 2019 07:16:11 GMT
Content-Type: application/xml;charset=utf-8
Content-Length: 170
Authorization: SignatureValue
<CreateBucketConfiguration xmlns="//s3.amazonaws.com/doc/2006-03-01/">
<DataLocationConstraint>
<Type>Local</Type>
</DataLocationConstraint>
</CreateBucketConfiguration>響應示例3
HTTP/1.1 200 OK
Location: /docs
Date: Sun, 29 Sep 2019 07:16:32 GMT
x-amz-request-id: c08665066c4e4b4186f9ecfbf0fdff05c4c6cdbabcbec0c2c4
Content-Length: 0
Server: CTYUN