全部產品
Search
文件中心

Object Storage Service:get-object

更新時間:Feb 19, 2025

您可以通過API級命令擷取儲存空間(Bucket)中的某個檔案(Object)。

注意事項

  • GetObject介面預設可通過HTTP和HTTPS兩種方式訪問。如果要設定僅允許通過HTTPS方式訪問,請使用Bucket Policy的授權訪問方式。具體操作,請參見通過Bucket Policy授權使用者訪問指定資源

  • 如果Object類型為歸檔類型,需要先完成解凍檔案(RestoreObject)請求,且該請求不能逾時。

許可權說明

阿里雲帳號預設擁有全部許可權。阿里雲帳號下的RAM使用者或RAM角色預設沒有任何許可權,需要阿里雲帳號或帳號管理員通過RAM PolicyBucket Policy授予操作許可權。

API

Action

說明

GetObject

oss:GetObject

下載Object。

oss:GetObjectVersion

下載Object時,如果通過versionId指定了Object的版本,則需要授予此操作的許可權。

kms:Decrypt

下載Object時,如果Object的中繼資料套件含X-Oss-Server-Side-Encryption: KMS,則需要此操作的許可權。

命令格式

ossutil api get-object --bucket value --key value [flags]

參數

類型

說明

--accept-encoding

string

指定用戶端的編碼類別型。

--bucket

string

Bucket名稱。

--if-match

string

如果傳入期望的ETag和Object的ETag匹配,則返回200 OK和Object Meta;否則返回412 precondition failed。

--if-modified-since

string

如果傳入參數中的時間早於實際修改時間,則返回200 OK和Object Meta;否則返回304 not modified。

--if-none-match

string

如果傳入期望的ETag值和Object的ETag不匹配,則返回200 OK和Object Meta;否則返回304 Not Modified。

--if-unmodified-since

string

如果傳入參數中的時間等於或者晚於檔案實際修改時間,則返回200 OK和Object Meta;否則返回412 Precondition Failed。

--key

string

Object的完整路徑。

--range

stringArray

指定檔案傳輸的範圍。

--response-cache-control

string

指定OSS返回請求的cache-control頭。

--response-content-disposition

string

指定OSS返回請求的content-disposition頭。

--response-content-encoding

string

指定OSS返回請求的content-encoding頭。

--response-content-language

string

指定OSS返回請求的content-language頭。

--response-expires

string

指定OSS返回請求的expires頭。

--version-id

string

請求解凍的Object的版本號碼。

說明

使用樣本

  • 擷取examplebucket儲存空間下的exampleobject檔案。

    ossutil api get-object --bucket examplebucket --key exampleobject
  • 擷取examplebucket儲存空間下的版本號碼為123exampleobject檔案。

    ossutil api get-object --bucket examplebucket --key exampleobject --version-id 123
  • 擷取examplebucket儲存空間下的exampleobject指定檔案範圍內容。

    ossutil api get-object --bucket examplebucket --key exampleobject --range bytes=1-10
  • 擷取examplebucket儲存空間下的exampleobject,如果exampleobject的修改時間早於 Mon, 11 May 2020 08:16:23 GMT則返回object。

    ossutil api get-object --bucket examplebucket --key exampleobject --if-modified-since "Mon, 11 May 2020 08:16:23 GMT"
  • 擷取examplebucket儲存空間下的exampleobject,如果exampleobjectETag等於123則返回object。

    ossutil api get-object --bucket examplebucket --key exampleobject --if-match 123
  • 擷取examplebucket儲存空間下的exampleobject,對返回內容進行Gzip壓縮傳輸。

    ossutil api get-object --bucket examplebucket --key exampleobject --accept-encoding gzip

相關API

以上使用方式底層基於以下API,如果您的程式自訂要求較高,您可以直接發起REST API請求。直接發起REST API請求需要手動編寫代碼計算簽名。更多資訊,請參見GetObject