HeadObjectは、ファイルの内容を返さずに特定のオブジェクトのメタ情報を返すために使用されます。
リクエスト構文
HEAD /ObjectName HTTP/1.1Host: BucketName/oss-cn-hangzhou.aliyuncs.comDate: GMT DateAuthorization: SignatureValue
リクエストヘッダ
名前 | 型 | 説明 |
---|---|---|
If-Modified-Since | String | 指定された時刻が実際の変更時刻よりも早い場合、システムは 200 OK メッセージとオブジェクトのメタデータを返します。 それ以外の場合は、304 Not Modified メッセージが返されます。 デフォルト:なし |
If-Unmodified-Since | String | 指定された時刻が実際のファイル変更時刻と同じか遅い場合、システムは 200 OK メッセージとオブジェクトメタデータを返します。 そうでない場合、システムは 412 Precondition Failed メッセージを返します。 デフォルト:なし |
If-Match | String | 導入予定の ETag がオブジェクトの ETag と一致する場合、システムは 200 OK メッセージとオブジェクトメタデータを返します。 そうでない場合、システムは 412 Precondition Failed メッセージを返します。 デフォルト:なし |
If-None-Match | String | 導入された ETag がオブジェクトの ETag と一致しない場合、システムは 200 OK メッセージおよびオブジェクトメタデータを返す。 それ以外の場合は、304 Not Modified メッセージが返されます。 デフォルト:なし |
詳細分析
- Head Object 要求が送信された後、システムが 200 OK メッセージまたはエラーメッセージを返しても、メッセージ本体は返されません。
- If-Modified-Since、If-Unmodified-Since、If-Match、および If-None-Match クエリー条件は、Head Object 要求のヘッダーで設定できます。 詳細な設定ルールについては、Get Object リクエストの関連フィールドを参照してください。 変更が行われない場合、304 Not Modified メッセージが返されます。
- 例えば、x-oss-meta-location のようにオブジェクトの put 要求を送信するときに、x-oss-meta- の接頭辞を付けたユーザーメタをアップロードすると、ユーザーメタが返されます。
- ファイルが存在しない場合、システムは Error 404 Not Found を返します。
- このオブジェクトがサーバー上でエントロピー暗号化されている場合、システムは Head Object 要求に対する応答のヘッダーに x-oss-server-side-encryption を返します。 x-oss-server-side-encryption の値は、オブジェクトのサーバー側暗号化アルゴリズムを示します。
- ファイルタイプがシンボリックリンクの場合、レスポンスヘッダーの
Content-Length
,ETag
、およびContent-Md5
はターゲットファイルのメタデータであり、Last-Modified
はターゲットファイルの最大値です。 シンボリックリンク、その他はシンボリックリンクのメタデータです。 - ファイル・タイプがシンボリック・リンクで、ターゲット・ファイルが存在しない場合は、404 Not Found を戻します。エラーコードは “SymlinkTargetNotExist” です。
- ファイル・タイプがシンボリック・リンクで、ターゲット・ファイル・タイプがシンボリック・リンクである場合、システムはエラー 400 Bad request を戻します。 エラーコードは “InvalidTargetType” です。
- x-oss-storage-class は、オブジェクトのストレージのタイプ (Standard、IA、archive) を示します。
- バケットタイプがアーカイブで、リストア要求がサブミットされている場合、オブジェクトのリストア状態は、応答ヘッダー内の x-oss-restore によって示されます。
- リストア要求がサブミットされないかタイムアウトした場合、フィールドは返されません。
- リストア要求が送信されてタイムアウトしない場合、返される x-oss-restore の値は ongoing-request = “true” です。
- リストア要求が送信され、完了した場合、返されるx-oss-restoreの値はongoing-request = “false”、expiry-date = “Sun、16 Apr 2017 08:12:33 GMT”です。 expiry-dateは、復元されたファイルの読み取り可能状態の有効期限を表します。
例
リクエスト例:
HEAD /oss.jpg HTTP/1.1Host: oss-example.oss-cn-hangzhou.aliyuncs.comDate: Fri, 24 Feb 2012 07:32:52 GMTAuthorization: OSS qn6qrrqxo2oawuk53otfjbyc:JbzF2LxZUtanlJ5dLA092wpDC/E=
リターン例:
HTTP/1.1 200 OKx-oss-request-id: 559CC9BDC755F95A64485981x-oss-object-type: Normalx-oss-storage-class: ArchiveDate: Fri, 24 Feb 2012 07:32:52 GMTLast-Modified: Fri, 24 Feb 2012 06:07:48 GMTETag: “fba9dede5f27731c9771645a39863328”Content-Length: 344606Content-Type: image/jpgConnection: keep-aliveServer: AliyunOSS
リストア要求が送信されたが完了していないリクエストの例:
HEAD /oss.jpg HTTP/1.1Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.comDate: Sat, 15 Apr 2017 07:32:52 GMTAuthorization: OSS e1Unnbm1rgdnpI:KKxkdNrUBu2t1kqlDh0MLbDb99I=
リターン例:
HTTP/1.1 200 OKx-oss-request-id: 58F71A164529F18D7F000045x-oss-object-type: Normalx-oss-storage-class: Archivex-oss-restore: ongoing-request=”true”Date: Sat, 15 Apr 2017 07:32:52 GMTLast-Modified: Sat, 15 Apr 2017 06:07:48 GMTETag: “fba9dede5f27731c9771645a39863328”Content-Length: 344606Content-Type: image/jpgConnection: keep-aliveServer: AliyunOSS
リストア要求が送信され、完了したときのリクエストの例:
HEAD /oss.jpg HTTP/1.1Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.comDate: Sat, 15 Apr 2017 09:35:51 GMTAuthorization: OSS e1Unnbm1rgdnpI:21qtGJ+ykDVmdu6O6FMJnn+WuBw=
リターン例:
HTTP/1.1 200 OKx-oss-request-id: 58F725344529F18D7F000055x-oss-object-type: Normalx-oss-storage-class: Archivex-oss-restore: ongoing-request=”false”, expiry-date=”Sun, 16 Apr 2017 08:12:33 GMT”Date: Sat, 15 Apr 2017 09:35:51 GMTLast-Modified: Sat, 15 Apr 2017 06:07:48 GMTETag: “fba9dede5f27731c9771645a39863328”Content-Length: 344606