BLOB サービス リソースのプロパティとメタデータの設定と取得

コンテナーと BLOB は、HTTP ヘッダーとして表記されるカスタムのメタデータをサポートしています。 メタデータ ヘッダーは、新しいコンテナー リソースまたは BLOB リソースを作成する要求、または既存のリソースのプロパティを明示的に作成する要求に設定できます。

このトピックは、次のサブトピックに分かれています。

メタデータ ヘッダーの形式

メタデータに対する操作

コンテナーと BLOB の標準 HTTP プロパティ

BLOB では、BLOB サービスによって自動的にインデックスが作成される特別な種類のカスタム メタデータであるタグもサポートされています。 詳細については、「BLOB インデックスを使用したAzure Blob Storageのデータの管理と検索」を参照してください。

メタデータ ヘッダーの形式

メタデータ ヘッダーは、名前と値のペアの形式で指定します。 ヘッダーの形式は次のとおりです。

x-ms-meta-name:string-value  

バージョン 2009-09-19 以降では、メタデータ名は C# 識別子の名前付け規則に従う必要があります。

名前の大文字と小文字は区別されません。 メタデータ名の作成時に指定された大文字と小文字の違いは維持されますが、設定時または読み取り時には大文字と小文字は区別されません。 リソースに対して同じ名前の複数のメタデータ ヘッダーが送信された場合、BLOB サービスはステータス コード 400 (Bad Request) を返します。

メタデータは、名前と値のペアで構成されます。 すべてのメタデータ ペアの合計サイズは最大 8 KB です。

メタデータの名前と値のペアは有効な HTTP ヘッダーです。つまり、HTTP ヘッダーに関する制約がすべて適用されます。

メタデータに対する操作

BLOB リソースまたはコンテナー リソースのメタデータは、リソースのコンテンツを返したり変更したりすることなく、直接取得または設定できます。

メタデータの値の読み取りや書き込みは値全体に対して行うことができます。部分的な更新はサポートされていません。 リソースに関するメタデータを設定すると、そのリソースの既存のメタデータ値が上書きされます。

プロパティおよびメタデータの取得

GET 操作と HEAD 操作は両方とも、指定したコンテナーまたは BLOB のメタデータ ヘッダーを取得します。 HEAD操作はヘッダーのみを返します。応答本文は返しません。

コンテナーに関するメタデータ ヘッダーを取得する際の URI の構文は、次のとおりです。

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

BLOB に関するメタデータ ヘッダーを取得する際の URI の構文は、次のとおりです。

GET/HEAD https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=metadata  

メタデータ ヘッダーの設定

PUT 操作は、指定したコンテナーまたは BLOB に関するメタデータ ヘッダーを設定し、該当するリソースに関する既存のメタデータを上書きします。 要求にヘッダーを指定せずに PUT を呼び出した場合は、該当するリソースに関する既存のメタデータがすべて消去されます。

コンテナーに関するメタデータ ヘッダーを設定する際の URI の構文は、次のとおりです。

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

BLOB に関するメタデータ ヘッダーを設定する際の URI の構文は、次のとおりです。

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

コンテナーおよび BLOB の標準 HTTP プロパティ

コンテナーおよび BLOB は、特定の標準 HTTP プロパティもサポートしています。 プロパティとメタデータは両方とも標準の HTTP ヘッダーとして表記されますが、ヘッダー名の付け方に違いがあります。 メタデータのヘッダー名は、プレフィックス x-ms-meta- とカスタム名で構成されます。 プロパティ ヘッダーは、HTTP /1.1 プロトコル仕様のヘッダー フィールド定義セクション 14 で指定されているように、標準の HTTP ヘッダー名を使用します。

コンテナーでサポートされている標準 HTTP ヘッダーは次のとおりです。

  • ETag

  • Last-Modified

BLOB でサポートされている標準 HTTP ヘッダーは次のとおりです。

  • ETag

  • Last-Modified

  • Content-Length

  • Content-Type

  • Content-MD5

  • Content-Encoding

  • Content-Language

  • Cache-Control

  • Origin

  • Range

参照

コンテナーの作成
コンテナーのプロパティの取得
コンテナー メタデータの設定
Put Blob
Copy Blob
Get Blob Properties
Get Blob Metadata
Set Blob Metadata
BLOB サービスの概念
BLOB インデックスを使用して Azure Blob Storage でデータを管理および検索する