HEAD Object
オブジェクトのメタデータを取得します(オブジェクトそのものは取得しません)。
オブジェクトに対しREAD権限を持たなければ、メタデータを取得することはできません。
匿名ユーザにREAD権限が付与されていれば、Authorizationヘッダーを利用せずにオブジェクトのメタデータを取得することができます。
HEAD操作はGET操作と同じオプションを持ちます。レスポンスボディがないのを除いて、GETのレスポンスと同じです。
リクエスト情報
シンタックス
HEAD /{bucket name}/{object key} HTTP/1.1 Host: s3api.iot.iij.jp Date: {date} Authorization: {authorization string}
リクエストパラメータ
この操作ではリクエストパラメータは使用しません。
リクエストヘッダー
この操作では基本リクエストヘッダーに加え、以下のヘッダーを使用します。
表. HEAD Object リクエストヘッダー一覧
HTTPヘッダー | 説明 | 必須 |
---|---|---|
Range | ダウンロードするオブジェクトの範囲を指定します。 bytes=開始位置-終了位置 の形式で記述します。開始位置を省略した場合、開始位置は 0 となり、終了位置を省略した場合はファイルの終了位置(オブジェクトのサイズ)となります。また、先頭の bytes= を省略することもできます。
値の指定パターンは、以下の3通りです。
範囲をカンマ区切りで複数指定された場合、最初に記載されている範囲のみを解釈します。 (e.x., bytes=0-999, bytes=1000-, -1999) | × |
If-Modified-Since | 指定された時間以降にオブジェクトが更新されていればオブジェクトを返し、その他の場合には304 Not Modifiedを返します。
| × |
If-Unmodified-Since | 指定された時間以降にオブジェクトが更新されていなければ、オブジェクトを返し、その他の場合には412 Precondition Failedを返します。
| × |
If-Match | 指定された値がオブジェクトのETagと 一致する 場合にオブジェクトを返します。一致しない場合には412 Precondition Failedを返します。
| × |
If-None-Match | 指定された値がオブジェクトのETagと 一致しない 場合にオブジェクトを返します。一致する場合には304 Not Modifiedを返します。
| × |
サーバサイド暗号化 で暗号化されたオブジェクトを取得する場合、以下のヘッダを指定します。
表. HEAD Object リクエストヘッダー(サーバサイド暗号化)一覧
名前 | 説明 | 必須 |
---|---|---|
x-iijgio-server-side-encryption-customer-algorithm | オブジェクトの復号に用いるアルゴリズムを指定します。値は”AES256”である必要があります。 | 〇 |
x-iijgio-server-side-encryption-customer-key | オブジェクトの復号に用いる暗号化キーを指定します。Base64でエンコードした値をセットします。暗号化キーの長さはBase64エンコード前で256ビットである必要があります。 暗号化キーは対象オブジェクトの暗号化後に速やかに破棄されます。 | 〇 |
x-iijgio-server-side-encryption-customer-key-MD5 | 暗号化キーをMD5(128bit)でダイジェストし、Base64エンコードした値をセットします。暗号化キーが正しく送られて来たかサービス側で検証するために利用します。 | 〇 |
リクエストエレメント
この操作ではリクエストエレメントは使用しません。
レスポンス情報
レスポンスヘッダー
この操作では基本レスポンスヘッダーに加え、以下のヘッダーを返します。
表. GET Object レスポンスヘッダー一覧
HTTPヘッダー | 説明 |
---|---|
x-iijgio-meta-* | オブジェクトのPUT操作をした際にメタデータを用意していた場合、x-iijgio-meta-を接頭辞として、レスポンスヘッダーで返されます。 例、family -> x-iijgio-meta-family
|
x-iijgio-missing-meta | x-iijgio-metaヘッダーで返らないメタデータのエントリー数がセットされます。
|
取得対象のオブジェクトが サーバサイド暗号化 で暗号化されている場合、追加で以下のヘッダを返します。
表. GET Object レスポンスヘッダー(サーバサイド暗号化)一覧
HTTPヘッダー | 説明 |
---|---|
x-iijgio-server-side-encryption-customer-algorithm | 暗号化に利用したアルゴリズムを返します。
|
x-iijgio-server-side-encryption-customer-key-MD5 | 暗号化に利用した暗号化キーのMD5値を返します。
|
レスポンスエレメント
この操作はレスポンスエレメントを返しません。
エラー情報
この操作では以下のエラーを返します。
表. HEAD Object エラーコード一覧
コード | ステータス | 内容 |
---|---|---|
InvalidAccessKeyId | 403 Forbidden | 指定のアクセスキーIDを持つユーザが存在しません。 |
SignatureDoesNotMatch | 403 Forbidden | 指定されたリクエストのシグネチャが一致しません。 |
AccessDenied | 403 Forbidden | オブジェクトに対するREAD権限がありません。 |
NoSuchKey | 404 Not Found | 指定Keyのオブジェクトが存在しません。 |
InvalidRange | 416 Request Range Not Satisfiable | 無効な範囲が指定されています。 |
InvalidArgument | 400 Bad Request | 以下のいずれかが原因です。
|
InvalidEncryptionAlgorithmError | 400 Bad Request | x-iijgio-server-side-encryption-customer-algorithに誤った値が指定されています。 |
サンプル
サンプル1:オブジェクトのメタデータを取得する
リクエスト
HEAD /bucket/my-image.jpg HTTP/1.1 Host: s3api.iot.iij.jp Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: IIJGIO 02236Q3V0RonhpaBX5sCYVf1bNRuU=
レスポンス
HTTP/1.1 200 OK x-iijgio-id-2: ef8yU9AS1ed4OpIszj7UDNEHGran x-iijgio-request-id: 318BC8BC143432E5 x-iijgio-version-id: 3HL4kqtJlcpXroDTDmjVBH40Nrjfkd Date: Wed, 28 Oct 2009 22:32:00 GMT Last-Modified: Sun, 1 Jan 2006 12:00:00 GMT ETag: "fba9dede5f27731c9771645a39863328" Content-Length: 434234 Content-Type: text/plain Server: s3api.iot.iij.jp