get-object
您可以通過(guò)API級(jí)命令獲取存儲(chǔ)空間(Bucket)中的某個(gè)文件(Object)。
注意事項(xiàng)
阿里云賬號(hào)默認(rèn)擁有獲取文件的權(quán)限。如果您需要通過(guò)RAM用戶或者STS的方式進(jìn)行獲取,您必須擁有
oss:GetObject
權(quán)限。具體操作,請(qǐng)參見為RAM用戶授權(quán)自定義的權(quán)限策略。GetObject接口默認(rèn)可通過(guò)HTTP和HTTPS兩種方式訪問(wèn)。如果要設(shè)置僅允許通過(guò)HTTPS方式訪問(wèn),請(qǐng)使用Bucket Policy的授權(quán)訪問(wèn)方式。具體操作,請(qǐng)參見通過(guò)Bucket Policy授權(quán)用戶訪問(wèn)指定資源。
如果Object類型為歸檔類型,需要先完成解凍文件(RestoreObject)請(qǐng)求,且該請(qǐng)求不能超時(shí)。
命令格式
ossutil api get-object --bucket value --key value [flags]
參數(shù) | 類型 | 說(shuō)明 |
--accept-encoding | string | 指定客戶端的編碼類型。 |
--bucket | string | Bucket名稱。 |
--if-match | string | 如果傳入期望的ETag和Object的ETag匹配,則返回200 OK和Object Meta;否則返回412 precondition failed。 |
--if-modified-since | string | 如果傳入?yún)?shù)中的時(shí)間早于實(shí)際修改時(shí)間,則返回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 | 如果傳入?yún)?shù)中的時(shí)間等于或者晚于文件實(shí)際修改時(shí)間,則返回200 OK和Object Meta;否則返回412 Precondition Failed。 |
--key | string | Object的完整路徑。 |
--range | stringArray | 指定文件傳輸?shù)姆秶?/p> |
--response-cache-control | string | 指定OSS返回請(qǐng)求的cache-control頭。 |
--response-content-disposition | string | 指定OSS返回請(qǐng)求的content-disposition頭。 |
--response-content-encoding | string | 指定OSS返回請(qǐng)求的content-encoding頭。 |
--response-content-language | string | 指定OSS返回請(qǐng)求的content-language頭。 |
--response-expires | string | 指定OSS返回請(qǐng)求的expires頭。 |
--version-id | string | 請(qǐng)求解凍的Object的版本號(hào)。 |
get-object命令對(duì)應(yīng)API接口GetObject。關(guān)于API中的具體參數(shù)含義,請(qǐng)參見GetObject。
關(guān)于支持的全局命令行選項(xiàng),請(qǐng)參見支持的全局命令行選項(xiàng)。
使用示例
獲取
examplebucket
存儲(chǔ)空間下的exampleobject
文件。ossutil api get-object --bucket examplebucket --key exampleobject
獲取
examplebucket
存儲(chǔ)空間下的版本號(hào)為123
的exampleobject
文件。ossutil api get-object --bucket examplebucket --key exampleobject --version-id 123
獲取
examplebucket
存儲(chǔ)空間下的exampleobject
指定文件范圍內(nèi)容。ossutil api get-object --bucket examplebucket --key exampleobject --range bytes=1-10
獲取
examplebucket
存儲(chǔ)空間下的exampleobject
,如果exampleobject
的修改時(shí)間早于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
存儲(chǔ)空間下的exampleobject
,如果exampleobject
的ETag
等于123
則返回object。ossutil api get-object --bucket examplebucket --key exampleobject --if-match 123
獲取
examplebucket
存儲(chǔ)空間下的exampleobject
,對(duì)返回內(nèi)容進(jìn)行Gzip壓縮傳輸。ossutil api get-object --bucket examplebucket --key exampleobject --accept-encoding gzip