使用根容器

根容器會做為儲存體帳戶的預設容器。 儲存體帳戶可能會有一個根容器。 根容器必須明確建立,並且必須命名為 $root

儲存在根容器中的 Blob 可以在不參考根容器名稱的情況下定址,如此 Blob 就可定址在儲存體帳戶階層的最上層。 例如,您可以依照下述方式參考位於根容器中的 Blob:

https://myaccount.blob.core.windows.net/mywebpage.html  

管理根容器

若要使用根容器搭配儲存體帳戶,請建立名為 $root 的新容器。 下列範例要求示範如何建立根容器:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/$root?restype=container HTTP/1.1  
  
Request Headers:  
x-ms-version: 2011-08-18  
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT  
x-ms-meta-Name: StorageSample  
x-ms-blob-public-access: container  
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=  

如果您不再需要根容器,也可以將它刪除。

就像其他容器一樣,根容器也可以提供匿名公用存取。 您可以在建立容器時設定 x-ms-blob-public-access 標頭,或在容器已經存在之後呼叫 設定容器 ACL ,讓容器成為公用容器。 如需詳細資訊,請參閱 限制對容器和 Blob 的存取

如果根容器存在,當您對儲存體帳戶執行 清單容器 作業時,就會顯示此容器。

當您對根容器執行 清單 Blob 作業時,根容器不會出現在傳回之 Blob 的資源 URL 中。 下列要求語法示範如何對根容器呼叫 List Blobs

GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list HTTP/1.1  

重要

根容器中的 Blob 不得在其名稱中包含正斜線 (/)。

範例

下列範例示範如何使用容器和 Blob 資源,包括根容器:

GET 作業

列出儲存體帳戶中的容器:

GET https://myaccount.blob.core.windows.net/?comp=list  

取得容器的屬性:

GET/HEAD https://myaccount.blob.core.windows.net/mycontainer?restype=container  

列出名為 mycontainer 之容器中的 Blob:

GET https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list  

列出根容器中的 Blob:

GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list  

從名為 myfile 的容器讀取名為 mycontainer 的 Blob:

GET https://myaccount.blob.core.windows.net/mycontainer/myfile  

從根容器讀取名為 myphoto 的 Blob:

GET https://myaccount.blob.core.windows.net/myphoto  

您也可以明確參考根容器:

GET https://myaccount.blob.core.windows.net/$root/myphoto  

在根容器中讀取 Blob 上的 Blob 中繼資料:

GET https://myaccount.blob.core.windows.net/myphoto?comp=metadata  

您也可以明確參考根容器:

GET https://myaccount.blob.core.windows.net/$root/myphoto?comp=metadata  

注意

參考根容器底下的 Blob 時,請小心避免在結尾包含正斜線 (/)。 例如,如下列一般的 URL 現在會導致狀態碼 400 (不正確的要求):

https://myaccount.blob.core.windows.net/myblob/

在以上範例中,Blob 服務會讀取容器名稱 myblob,並預期在結尾的斜線之後會看到 Blob 名稱。 因為遺漏 Blob 名稱而造成要求格式不正確。

在根容器中的 Blob 上執行作業時,下列 URL 是有效的:

https://myaccount.blob.core.windows.net/myblob

PUT 作業

建立名為 mycontainer 的容器:

  
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container  

在根容器中建立名為 myblob 的 Blob:

  
PUT https://myaccount.blob.core.windows.net/myblob  

您也可以明確指定根容器:

  
PUT https://myaccount.blob.core.windows.net/$root/myblob  

在名為 myblob 的容器中,建立名為 mycontainer 的 Blob:

PUT https://myaccount.blob.core.windows.net/mycontainer/myblob  

在名為 photos/myphoto 的容器中,建立名為 mycontainer 的 Blob:

PUT https://myaccount.blob.core.windows.net/mycontainer/photos/myphoto  

在根容器中名為 myblob 的 Blob 上設定中繼資料:

  
PUT https://myaccount.blob.core.windows.net/myblob?comp=metadata  

DELETE 作業

刪除名為 mycontainer 的容器:

  
DELETE https://myaccount.blob.core.windows.net/mycontainer?restype=container  

刪除根容器:

  
DELETE https://myaccount.blob.core.windows.net/$root?restype=container  

從根容器刪除 Blob myblob

  
DELETE https://myaccount.blob.core.windows.net/myblob  

您也可以明確指定根容器:

  
DELETE https://myaccount.blob.core.windows.net/$root/myblob  

另請參閱

Blob 服務資源上的 HTTP 作業
命名和參考容器、Blob 及中繼資料
Azure 儲存體服務的版本設定 \(英文\)