オブジェクトを照会します。この操作を呼び出すには、オブジェクトに対する読み取り権限が必要です。
注意事項
デフォルトでは、GetObject 操作は HTTP および HTTPS 経由のアクセスをサポートしています。 HTTPS 経由でのみバケットへのアクセスを許可するには、バケットポリシーを設定してアクセス方法を指定します。 詳細については、「バケットポリシーを設定して他のユーザーに OSS リソースへのアクセスを承認する」をご参照ください。
アーカイブオブジェクトを照会する場合は、GetObject 操作を呼び出す前に、RestoreObject リクエストを送信してオブジェクトを復元するか、アーカイブオブジェクトが格納されているバケットのアーカイブオブジェクトのリアルタイムアクセスを有効にする必要があります。
権限
デフォルトでは、Alibaba Cloud アカウントは、アカウント内のリソースに対するフル権限を持っています。 一方、RAM ユーザーと Alibaba Cloud アカウントに関連付けられた RAM ロールは、最初は権限を持っていません。 RAM ユーザーまたはロールを使用してリソースを管理するには、RAM ポリシーまたはバケットポリシーを使用して必要な権限を付与する必要があります。
API | アクション | 説明 |
GetObject |
| オブジェクトをダウンロードする権限を付与します。 |
| オブジェクトバージョンを照会する権限を付与します。この権限は、オブジェクトの特定のバージョンをダウンロードする場合に必要です。 | |
| Key Management Service (KMS) 復号を使用する権限を付与します。この権限は、 x-oss-server-side-encryption ヘッダーを指定して暗号化したオブジェクトを部分的にダウンロードする場合に必要です。 |
バージョン管理
デフォルトでは、GetObject が呼び出された後、オブジェクトの現在のバージョンのみが返されます。
リクエストでオブジェクトのバージョン ID が指定されている場合、OSS は指定されたバージョンのオブジェクトを返します。 リクエストでバージョン ID が null に設定されている場合、OSS はバージョン ID が null のオブジェクトのバージョンを返します。
リクエスト構文
GET /ObjectName HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Range: bytes=ByteRange (optional)
認証ヘッダーの計算方法の詳細については、「認証ヘッダーの計算」をご参照ください。
ネットワーク状態が悪い場合に OSS から 100 MB を超えるオブジェクトをダウンロードすると、オブジェクトのダウンロードに失敗する可能性があります。 Range ヘッダーを指定して、大きなオブジェクトの内容の一部を照会できます。 詳細については、「HTTP レンジリクエストをセグメント化して OSS リソースを取得する方法」をご参照ください。
リクエストヘッダー
GetObject リクエストを開始するときに、リクエストヘッダーを設定してレスポンスヘッダーをカスタマイズできます。 ただし、レスポンスヘッダーは、リクエストが成功した場合にのみ、リクエストヘッダーで指定された値に設定されます。 リクエストが成功した場合、200 OK が返されます。
匿名ユーザーとして GetObject リクエストを開始する場合、リクエストヘッダーを設定してレスポンスヘッダーをカスタマイズすることはできません。
ヘッダー | タイプ | 必須 | 説明 |
Range | String | いいえ | 照会するデータの範囲。
デフォルトでは、このヘッダーは空のままです。 |
If-Modified-Since | String | いいえ | このヘッダーで指定された時刻がオブジェクトの最終更新時刻よりも前であるか、無効な場合、オブジェクトと 200 OK が返されます。 それ以外の場合、304 Not Modified が返されます。 時刻は GMT でなければなりません。 例: デフォルトでは、このヘッダーは空のままです。 |
If-Unmodified-Since | String | いいえ | このヘッダーで指定された時刻がオブジェクトの最終更新時刻と同じかそれ以降の場合、オブジェクトと 200 OK が返されます。 それ以外の場合、412 Precondition Failed が返されます。 時刻は GMT でなければなりません。 例: リクエストで If-Modified-Since ヘッダーと If-Unmodified-Since ヘッダーを指定できます。 デフォルトでは、このヘッダーは空のままです。 |
If-Match | String | いいえ | リクエストで指定された ETag がオブジェクトの ETag 値と一致する場合、オブジェクトと 200 OK が返されます。 それ以外の場合、412 Precondition Failed が返されます。 オブジェクトの ETag は、オブジェクトのデータ整合性をチェックするために使用されます。 デフォルトでは、このヘッダーは空のままです。 |
If-None-Match | String | いいえ | リクエストで指定された ETag がオブジェクトの ETag と一致しない場合、オブジェクトと 200 OK が返されます。 それ以外の場合、304 Not Modified が返されます。 リクエストで If-Match ヘッダーと If-None-Match ヘッダーを指定できます。 デフォルトでは、このヘッダーは空のままです。 |
Accept-Encoding | String | いいえ | クライアント側のエンコード方式。 オブジェクトを GZIP 形式で返す場合は、リクエストに Accept-Encoding:gzip ヘッダーを含める必要があります。 OSS は、Content-Type ヘッダーとオブジェクトのサイズが 1 KB 以上かどうかによって、Gzip 圧縮を使用するかどうかを判断します。 条件が満たされると、データは圧縮形式で送信されます。 それ以外の場合、データは元の形式で送信されます。 説明
デフォルトでは、このヘッダーは空のままです。 |
リクエストパラメーター
ヘッダー | タイプ | 必須 | 説明 |
response-content-language | String | いいえ | レスポンスで返される Content-language ヘッダー。 デフォルトでは、このヘッダーは空のままです。 |
response-expires | String | いいえ | レスポンスで返される Expires ヘッダー。 デフォルトでは、このヘッダーは空のままです。 |
response-cache-control | String | いいえ | レスポンスで返される Cache-control ヘッダー。 デフォルトでは、このヘッダーは空のままです。 |
response-content-disposition | String | いいえ | レスポンスで返される Content-disposition ヘッダー。 デフォルトでは、このヘッダーは空のままです。 |
response-content-encoding | String | いいえ | レスポンスで返される Content-encoding ヘッダー。 デフォルトでは、このヘッダーは空のままです。 |
レスポンスヘッダー
リクエストされたオブジェクトがシンボリックリンクの場合、シンボリックリンクが指すオブジェクトの内容が返されます。 Content-Length
、ETag
、および Content-Md5
レスポンスヘッダーは、返されたオブジェクトのメタデータを示します。 Last-Modified
ヘッダーの戻り値は、シンボリックリンクの最終更新時刻、またはシンボリックリンクが指すオブジェクトの最終更新時刻のいずれか遅い方です。 他のヘッダーは、シンボリックリンクのメタデータを示します。
ヘッダー | タイプ | 説明 |
x-oss-server-side-encryption | String | リクエストされたオブジェクトがエントロピーエンコーディングに基づくサーバー側暗号化アルゴリズムを使用して暗号化されている場合、OSS は GetObject リクエストを受信した後、オブジェクトを自動的に復号化し、復号化されたオブジェクトを返します。 OSS は、レスポンスに x-oss-server-side-encryption ヘッダーを含めて、サーバー上でオブジェクトの暗号化に使用される暗号化アルゴリズムを示します。 |
x-oss-tagging-count | String | オブジェクトに追加されたタグの数。 このヘッダーは、オブジェクトのタグを照会する権限を持っている場合にのみ返されます。 |
x-oss-expiration | String | ライフサイクルルールが設定されているバケット内のオブジェクトの有効期限。
|
例
シンプルな GetObject リクエスト
リクエスト例
GET /oss.jpg HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Fri, 24 Feb 2012 06:38:30 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
オブジェクトのレスポンス例オブジェクトの場合
HTTP/1.1 200 OK x-oss-request-id: 3a8f-2e2d-7965-3ff9-51c875b***** x-oss-object-type: Normal Date: Fri, 24 Feb 2012 06:38:30 GMT Last-Modified: Fri, 24 Feb 2012 06:07:48 GMT ETag: "5B3C1A2E0563E1B002CC607C*****" Content-Type: image/jpg Content-Length: 344606 Server: AliyunOSS [344606 bytes of object data]
ディレクトリのレスポンス例
重要ディレクトリに対して GetObject リクエストが開始された場合、GetObject リクエストで指定された Range などのカスタムレスポンスヘッダーは有効になりません。
HTTP/1.1 200 OK x-oss-request-id:3a8f-2e2d-7965-3ff9-51c875b***** x-oss-object-type: Normal Date: Wed, 31 Mar 2021 06:38:30 GMT Last-Modified: Tue, 30 Mar 2021 06:07:48 GMT ETag: "null" Content-Type: application/x-directory Content-Length: 0 Server: AliyunOSS
Range ヘッダーを含む GetObject リクエスト
リクエスト例
GET /oss.jpg HTTP/1.1 Host:oss-example.oss-cn-hangzhou.aliyuncs.com Date: Fri, 28 Feb 2012 05:38:42 GMT Range: bytes=100-900 Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 206 Partial Content x-oss-request-id: 28f6-15ea-8224-234e-c0ce407***** x-oss-object-type: Normal Date: Fri, 28 Feb 2012 05:38:42 GMT Last-Modified: Fri, 24 Feb 2012 06:07:48 GMT ETag: "5B3C1A2E05E1B002CC607C*****" Accept-Ranges: bytes Content-Range: bytes 100-900/344606 Content-Type: image/jpg Content-Length: 801 Server: AliyunOSS [801 bytes of object data]
カスタムレスポンスヘッダーを含む GetObject リクエスト
リクエスト例
GET /oss.jpg?response-expires=Thu%2C%2001%20Feb%202012%2017%3A00%3A00%20GMT&response-cache-control=No-cache&response-content-disposition=attachment%253B%2520filename%253Dtesting.txt&response-content-encoding=utf-8&response-content-language=%E4%B8%AD%E6%96%87 HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com: Date: Fri, 24 Feb 2012 06:09:48 GMT
レスポンス例
HTTP/1.1 200 OK x-oss-request-id: 559CC9BDC75A644***** x-oss-object-type: Normal Date: Fri, 24 Feb 2012 06:09:48 GMT Last-Modified: Fri, 24 Feb 2012 06:07:48 GMT ETag: "5B3C1A2E053D1B002CC607*****" Content-Length: 344606 Connection: keep-alive Content-disposition: attachment; filename=testing.txt Content-language: en Content-type: jpg Cache-control: no-cache Expires: Fri, 24 Feb 2012 17:00:00 GMT Server: AliyunOSS [344606 bytes of object data]
シンボリックリンクに対する GetObject リクエスト
リクエスト例
GET /link-to-oss.jpg HTTP/1.1 Accept-Encoding: identity Date: Tue, 08 Nov 2016 03:17:58 GMT Host: oss-example.oss-cn-hangzhou.aliyuncs.com Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 200 OK Server: AliyunOSS Date: Tue, 08 Nov 2016 03:17:58 GMT Content-Type: application/octet-stream Content-Length: 20 Connection: keep-alive x-oss-request-id: 582143E6A212AD***** Accept-Ranges: bytes ETag: "8086265EFC021F9A2F09BF4****" Last-Modified: Tue, 08 Nov 2016 03:17:58 GMT x-oss-object-type: Symlink Content-MD5: gIYmXvwCEe0fmi8Jv0Y****
復元されたオブジェクトに対する GetObject リクエスト
リクエスト例
GET /oss.jpg HTTP/1.1 Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com Date: Sat, 15 Apr 2017 09:38:30 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 200 OK x-oss-request-id: 58F723829F29F18D7F00***** x-oss-object-type: Normal x-oss-restore: ongoing-request="false", expiry-date="Sun, 16 Apr 2017 08:12:33 GMT" Date: Sat, 15 Apr 2017 09:38:30 GMT Last-Modified: Sat, 15 Apr 2017 06:07:48 GMT ETag: "5B3C1A2E0763E1B002CC607C*****" Content-Type: image/jpg Content-Length: 344606 Server: AliyunOSS [354606 bytes of object data]
バージョン ID が指定されたオブジェクトを照会するために送信された GetObject リクエスト
リクエスト例
GET /example?versionId=CAEQNhiBgMDJgZCA0BYiIDc4MGZjZGI2OTBjOTRmNTE5NmU5NmFhZjhjYmY0**** HTTP/1.1 Host: versioning-get.oss-cn-hangzhou.aliyuncs.com Date: Tue, 09 Apr 2019 02:58:06 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 200 OK x-oss-request-id: 5CAC0A3EDE0170***** x-oss-version-id: CAEQNhiBgM0BYiIDc4MGZjZGI2OTBjOTRmNTE5NmU5NmFhZjhjYmY***** x-oss-object-type: Normal Date: Tue, 17 Apr 2025 02:58:06 GMT Last-Modified: Fri, 22 Mar 2018 08:07:50 GMT ETag: "5B3C1A2E053D7002CC607C5A*****" Content-Type: text/html Content-Length: 362149 Server: AliyunOSS [362149 bytes of object data]
バージョン ID が指定されておらず、現在のバージョンが削除マーカーであるオブジェクトを照会するために送信された GetObject リクエスト
リクエスト例
GET /example HTTP/1.1 Host: versioning-get.oss-cn-hangzhou.aliyuncs.com Date: Tue, 17 Apr 2025 03:22:33 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 404 Not Found x-oss-request-id: 5CAC0FEADE0170***** x-oss-delete-marker: true x-oss-version-id: CAEQNxiBgyA0BYiIDc4ZDdmNTA2MGViZTRiNjE5NzZlZWM4OWM5OT***** Date: Tue, 17 Apr 2025 03:22:33 GMT Content-Type: application/xml Connection: keep-alive Server: AliyunOSS <?xml version="1.0" encoding="UTF-8"?> <Error> <Code>NoSuchKey</Code> <Message>The specified key does not exist.</Message> <RequestId>5CAC0FEADE0170*****</RequestId> <HostId>versioning-get.oss-cn-hangzhou.aliyun*****</HostId> <Key>example</Key> </Error>
バージョン ID が指定されており、そのバージョンが削除マーカーであるオブジェクトを照会するために送信された GetObject リクエスト
リクエスト例
GET /example?versionId=CAEQMxiBgMCfqaWA0BYiIDliMWI4MGQ0MTVmMjQ3MmE5MDNlMmY4YmFkYTk3**** HTTP/1.1 Host: versioning-get.oss-cn-hangzhou.aliyuncs.com Date: Tue, 17 Apr 2025 03:09:44 GMT Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
レスポンス例
HTTP/1.1 405 Method Not Allowed x-oss-request-id: 5CAC0CF8DE01700***** x-oss-delete-marker: true x-oss-version-id: CAEQMxiBgMCfqaWADliMWI4MGQ0MTVmMjQ3MmE5MDNlMmY4YmFkYTk***** Allow: DELETE Date: Tue, 17 Apr 2025 03:09:44 GMT Content-Type: application/xml Content-Length: 318 Connection: keep-alive Server: AliyunOSS <?xml version="1.0" encoding="UTF-8"?> <Error> <Code>MethodNotAllowed</Code> <Message>The specified method is not allowed against this resource.</Message> <RequestId>5CAC0CF8DE0170*****</RequestId> <HostId>versioning-get.oss-cn-hangzhou.aliyunc*****</HostId> <Method>GET</Method> <ResourceType>DeleteMarker</ResourceType> </Error>
OSS SDK
以下のプログラミング言語の OSS SDK を使用して、GetObject 操作を呼び出すことができます。
ossutil
GetObject 操作に対応する ossutil コマンドについては、「get-object」をご参照ください。
エラーコード
エラーコード | HTTP ステータスコード | 説明 |
NoSuchKey | 404 | 指定されたオブジェクトが存在しません。 |
SymlinkTargetNotExist | 404 | リクエストされたオブジェクトはシンボリックリンクですが、シンボリックリンクが指すオブジェクトが存在しません。 |
InvalidTargetType | 400 | リクエストされたオブジェクトはシンボリックリンクですが、シンボリックリンクが指すオブジェクトは別のシンボリックリンクです。 |
InvalidObjectState | 403 | アーカイブオブジェクトをダウンロードするときに、次のいずれかのシナリオが発生します。
|
Not Modified | 304 | 考えられる原因:
|
Precondition Failed | 412 | 考えられる原因:
|
Not Found | 404 | リクエストでオブジェクトのバージョン ID が指定されておらず、オブジェクトの現在のバージョンが削除マーカーです。 |
Method Not Allowed | 405 | リクエストでオブジェクトのバージョン ID が指定されており、そのバージョンが削除マーカーです。 |