Blob service リソースのプロパティとメタデータの設定と取得

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

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

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

メタデータに対する操作

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

Blob では、Blob service によって自動的にインデックスが作成される特別な種類のカスタムメタデータであるタグもサポートしています。 詳細については、「 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 のメタデータ ヘッダーを取得します。 これらの操作はヘッダーのみを返し、応答の本文は返しません。

コンテナーに関するメタデータ ヘッダーを取得する際の 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個のヘッダーフィールド定義セクション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

参照

コンテナーの作成
コンテナーのプロパティを取得する
コンテナーメタデータの設定
Blob の配置
Blob のコピー
Blob のプロパティの取得
Blob メタデータの取得
Blob メタデータの設定
Blob Service の概念
BLOB インデックスを使用して Azure Blob Storage でデータを管理および検索する