セールス: 1-800-867-1380

ルート コンテナーの操作

更新日: 2015年2月

ルート コンテナーは、ストレージ アカウントの既定のコンテナーとして機能します。ストレージ アカウントにはルート コンテナーを 1 つ作成できます。ルート コンテナーは明示的に作成し、$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 ヘッダーを設定するか、コンテナーが既に存在する場合は Set Container ACL を呼び出します。詳細については、「コンテナーと BLOB へのアクセスの制限」を参照してください。

ルート コンテナーが存在する場合は、ストレージ アカウントに対して List Containers (REST API) 操作を実行すると表示されます。

ルート コンテナーに対して List Blobs 操作を実行した場合、返される BLOB のリソース URL にはルート コンテナーは表示されません。次の要求構文は、ルート コンテナーに対して List Blobs を呼び出す方法を示しています。

GET https://myaccount.blob.core.windows.net/$root?restype=container&comp=list HTTP/1.1
Important重要
ルート コンテナー内の BLOB の名前にはスラッシュ (/) を含めることはできません。

以降に紹介する各例は、コンテナー リソースと BLOB リソース (ルート コンテナーも含む) の操作方法を示しています。

ストレージ アカウントのコンテナーの一覧を作成する場合は、次のようになります。

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
noteメモ
ルート コンテナー内の BLOB を参照する際は、末尾にスラッシュ (/) を含めないように注意してください。たとえば、次のような URL を指定すると、ステータス コード (Bad Request) が返されます。

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

上の例では、BLOB サービスはコンテナーの名前を myblob として読み取り、末尾のスラッシュの後に BLOB 名が続くものと想定します。このため、BLOB 名が未指定となり、この要求は形式が無効と判断されます。

次の URL は、ルート コンテナー内の BLOB の操作に指定するものとして有効です。

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

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

mycontainer という名前のコンテナーを削除する場合は、次のようになります。


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

ルート コンテナーを削除する場合は、次のようになります。


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

ルート コンテナーから myblob という名前の BLOB を削除する場合は、次のようになります。


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

ルート コンテナーを明示的に指定することもできます。


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

関連項目

この情報は役に立ちましたか。
(残り 1500 文字)
フィードバックをいただき、ありがとうございました
表示:
© 2015 Microsoft