すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:GetObject

最終更新日:Apr 25, 2025

オブジェクトを照会します。この操作を呼び出すには、オブジェクトに対する読み取り権限が必要です。

注意事項

  • デフォルトでは、GetObject 操作は HTTP および HTTPS 経由のアクセスをサポートしています。 HTTPS 経由でのみバケットへのアクセスを許可するには、バケットポリシーを設定してアクセス方法を指定します。 詳細については、「バケットポリシーを設定して他のユーザーに OSS リソースへのアクセスを承認する」をご参照ください。

  • アーカイブオブジェクトを照会する場合は、GetObject 操作を呼び出す前に、RestoreObject リクエストを送信してオブジェクトを復元するか、アーカイブオブジェクトが格納されているバケットのアーカイブオブジェクトのリアルタイムアクセスを有効にする必要があります。

権限

デフォルトでは、Alibaba Cloud アカウントは、アカウント内のリソースに対するフル権限を持っています。 一方、RAM ユーザーと Alibaba Cloud アカウントに関連付けられた RAM ロールは、最初は権限を持っていません。 RAM ユーザーまたはロールを使用してリソースを管理するには、RAM ポリシーまたはバケットポリシーを使用して必要な権限を付与する必要があります。

API

アクション

説明

GetObject

oss:GetObject

オブジェクトをダウンロードする権限を付与します。

oss:GetObjectVersion

オブジェクトバージョンを照会する権限を付与します。この権限は、オブジェクトの特定のバージョンをダウンロードする場合に必要です。

kms:Decrypt

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

いいえ

照会するデータの範囲。

  • 指定された範囲が有効な場合、オブジェクトの合計サイズとデータの範囲が返されます。 たとえば、Content-Range: bytes 0~9/44 は、オブジェクトの合計サイズが 44 バイトで、返されるデータの範囲が最初の 10 バイトであることを示します。

  • ただし、指定された範囲が無効な場合、オブジェクト全体が返され、レスポンスには Content-Range ヘッダーは含まれません。

デフォルトでは、このヘッダーは空のままです。

If-Modified-Since

String

いいえ

このヘッダーで指定された時刻がオブジェクトの最終更新時刻よりも前であるか、無効な場合、オブジェクトと 200 OK が返されます。 それ以外の場合、304 Not Modified が返されます。

時刻は GMT でなければなりません。 例: Fri, 13 Nov 2015 14:47:53 GMT

デフォルトでは、このヘッダーは空のままです。

If-Unmodified-Since

String

いいえ

このヘッダーで指定された時刻がオブジェクトの最終更新時刻と同じかそれ以降の場合、オブジェクトと 200 OK が返されます。 それ以外の場合、412 Precondition Failed が返されます。

時刻は GMT でなければなりません。 例: Fri, 13 Nov 2015 14:47:53 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 圧縮を使用するかどうかを判断します。 条件が満たされると、データは圧縮形式で送信されます。 それ以外の場合、データは元の形式で送信されます。

説明
  • GZIP 形式での圧縮が有効になった後、レスポンスにはオブジェクトの ETag または Content-Length は含まれません。

  • Content-Type が次のいずれかの値に設定されている場合、GZIP 形式での圧縮がサポートされます: text/cache-manifest、text/xml、text/css、text/html、text/plain、application/javascript、application/x-javascript、application/rss+xml、application/json、text/json。

デフォルトでは、このヘッダーは空のままです。

リクエストパラメーター

ヘッダー

タイプ

必須

説明

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-LengthETag、および 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

ライフサイクルルールが設定されているバケット内のオブジェクトの有効期限。

  • バケットでバージョン管理が有効になっている場合

    • リクエストにバージョン ID が含まれていない場合

      リクエストされたオブジェクトがライフサイクルルールで指定された削除条件に一致する場合、レスポンスには x-oss-expiration ヘッダーが含まれ、オブジェクトの現在のバージョンの有効期限が示されます。

    • リクエストにバージョン ID が含まれている場合

      リクエストされたオブジェクトがライフサイクルルールで指定された削除条件に一致するかどうかに関係なく、レスポンスには x-oss-expiration ヘッダーは含まれません。

  • バケットでバージョン管理が有効になっていない場合

    • リクエストされたオブジェクトがライフサイクルルールで指定された削除条件に一致する場合、レスポンスには x-oss-expiration ヘッダーが含まれます。

    • リクエストされたオブジェクトがライフサイクルルールで指定された削除条件に一致しない場合、レスポンスには x-oss-expiration ヘッダーは含まれません。

  • シンプルな 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

アーカイブオブジェクトをダウンロードするときに、次のいずれかのシナリオが発生します。

  • オブジェクトに対する RestoreObject リクエストが開始されていないか、タイムアウトしました。

  • オブジェクトに対する RestoreObject リクエストは開始されましたが、オブジェクトは復元されていません。

Not Modified

304

考えられる原因:

  • リクエストで If-Modified-Since ヘッダーが指定されていますが、リクエストされたオブジェクトは指定された時刻以降に変更されていません。

  • リクエストで If-None-Match ヘッダーが指定されており、リクエストで提供された ETag がリクエストされたオブジェクトの ETag と同じです。

Precondition Failed

412

考えられる原因:

  • リクエストで If-Unmodified-Since ヘッダーが指定されていますが、指定された時刻がリクエストされたオブジェクトの更新時刻よりも前です。

  • リクエストで If-Match ヘッダーが指定されていますが、リクエストで提供された ETag がリクエストされたオブジェクトの ETag と異なります。

Not Found

404

リクエストでオブジェクトのバージョン ID が指定されておらず、オブジェクトの現在のバージョンが削除マーカーです。

Method Not Allowed

405

リクエストでオブジェクトのバージョン ID が指定されており、そのバージョンが削除マーカーです。