GET操作從 對象存儲 下載對象。使用GET接口前,請確認(rèn)必須擁有對象的READ權(quán)限。如果對象Owner向匿名用戶授予READ訪問權(quán)限,則可以在不使用鑒權(quán)頭域的情況下訪問該對象。
服務(wù)端加密
如果客戶端的對象上傳時,使用了客戶提供的加密密鑰進(jìn)行服務(wù)端加密,當(dāng)下載對象時,同樣也必須在消息中提供密鑰。
多版本
默認(rèn)情況下,獲取的是最新版本的對象。如果最新版本的對象是刪除標(biāo)記,則返回對象不存在。如果要獲取指定版本的對象,請求可攜帶versionId消息參數(shù)。
歸檔存儲對象
如果要下載的對象是歸檔存儲類對象,由于對象存儲在存檔設(shè)備中,您必須先使用對象取回,然后才能下載該歸檔存儲對象。對象處于不同的取回狀態(tài)時,給出不同響應(yīng):如果對象已取回,下載對象成功時需要返回x-obs-restore頭域指示取回失效時間。對未取回或正在取回的歸檔存儲對象發(fā)送下載請求時,會返回錯誤403 Forbidden。
| 名稱 | 類型 | IN | 必選 | 描述 |
|---|---|---|---|---|
|
Authorization
|
string | header | 是 |
請求消息中可帶的簽名信息。 |
|
Date
|
string | header | 否 |
請求發(fā)起端的日期和時間,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默認(rèn)值:無。 條件:如果消息頭中帶了x-obs-date字段,則可以不帶該字段,其他情況下必選。 |
|
Range
|
string | header | 否 |
獲取對象時,獲取在Range范圍內(nèi)的對象內(nèi)容。如果Range不合法則忽略此字段獲取整個對象。 Range是一個范圍,它的起始值最小為0,最大為對象長度減1。Range范圍的起始值為必填項(xiàng),如果Range只包含起始值,表示獲取起始值到對象長度減1這個區(qū)間的對象內(nèi)容。 攜帶Range頭域后,響應(yīng)消息的ETag仍是對象的ETag,而不是Range范圍內(nèi)對象的ETag。 bytes=byte_range 示例1:bytes=0-4 示例2:bytes=1024 示例3:bytes=10-20,30-40(表示多個區(qū)間) |
|
If-Modified-Since
|
string | header | 否 |
如果對象在請求中指定的時間之后有修改,則返回對象內(nèi)容;否則的話返回304(not modified)。 類型:符合http://www.ietf.org/rfc/rfc2616.txt規(guī)定格式的HTTP時間字符串。 |
|
If-Unmodified-Since
|
string | header | 否 |
如果對象在請求中指定的時間之后沒有修改,則返回對象內(nèi)容;否則的話返回412(precondition failed)。 類型:符合http://www.ietf.org/rfc/rfc2616.txt規(guī)定格式的HTTP時間字符串。 |
|
If-Match
|
string | header | 否 |
如果對象的ETag和請求中指定的ETag相同,則返回對象內(nèi)容,否則的話返回412(precondition failed)。 (ETag值,例:0f64741bf7cb1089e988e4585d0d3434。) |
|
If-None-Match
|
string | header | 否 |
如果對象的ETag和請求中指定的ETag不相同,則返回對象內(nèi)容,否則的話返回304(not modified)。 (ETag值,例:0f64741bf7cb1089e988e4585d0d3434。) |
|
x-obs-server-side-encryption-customer-algorithm
|
string | header | 否 |
SSE-C方式下使用該頭域,該頭域表示加密使用的算法。 示例:x-obs-server-side-encryption-customer-algorithm:AES256 約束:需要和x-obs-server-side-encryption-customer-key, x-obs-server-side-encryption-customer-key-MD5一起使用。 |
|
x-obs-server-side-encryption-customer-key
|
string | header | 否 |
SSE-C方式下使用該頭域,該頭域表示加密使用的密鑰。該密鑰用于解密對象。 示例:x-obs-server-side-encryption-customer-key:K7QkYpBkM5+hca27fsNkUnNVaobncnLht/rCB2o/9Cw= 約束:該頭域由256-bit的密鑰經(jīng)過base64-encoded得到,需要和x-obs-server-side-encryption-customer-algorithm,x-obs-server-side-encryption-customer-key-MD5一起使用。 |
|
x-obs-server-side-encryption-customer-key-MD5
|
string | header | 否 |
SSE-C方式下使用該頭域,該頭域表示加密使用的密鑰的MD5值。MD5值用于驗(yàn)證密鑰傳輸過程中沒有出錯。 示例:x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ== 約束:該頭域由密鑰的128-bit MD5值經(jīng)過base64-encoded得到,需要和x-obs-server-side-encryption-customer-algorithm,x-obs-server-side-encryption-customer-key一起使用。 |
|
object_key
|
string | path | 是 |
通過此請求下載的對象名稱。 |
|
bucket_name
|
string | query | 是 |
桶名稱 |
|
response-content-type
|
string | query | 否 |
重寫響應(yīng)中的Content-Type頭。 |
|
response-content-language
|
string | query | 否 |
重寫響應(yīng)中的Content-Language頭。 |
|
response-expires
|
string | query | 否 |
重寫響應(yīng)中的Expires頭。 |
|
response-cache-control
|
string | query | 否 |
重寫響應(yīng)中的Cache-Control頭。 |
|
response-content-disposition
|
string | query | 否 |
重寫響應(yīng)中的Content-Disposition頭。 示例:response-content-disposition=attachment; filename*=utf-8''name1 下載對象重命名為“name1”,如果name1中存在中文,需要將中文進(jìn)行URL編碼。 |
|
response-content-encoding
|
string | query | 否 |
重寫響應(yīng)中的Content-Encoding頭。 |
|
versionId
|
string | query | 否 |
指定獲取對象的版本號。 |
|
x-image-process
|
string | query | 否 |
圖片處理服務(wù)。 示例: 命令方式:x-image-process=image/commands 樣式方式:x-image-process=style/stylename 詳見《圖片處理特性指南》。 |
|
attname
|
string | query | 否 |
重寫響應(yīng)中的Content-Disposition頭。 示例:attname=name1 下載對象重命名為“name1”。 |
成功響應(yīng)消息。
| 名稱 | 類型 | 必選 | 描述 |
|---|---|---|---|
|
Content-Length
|
string | 否 |
響應(yīng)消息體的字節(jié)長度。 |
|
Connection
|
string | 否 |
指明與服務(wù)器的連接是長連接還是短連接。 |
|
Date
|
string | 否 |
OBS系統(tǒng)響應(yīng)的時間。 |
|
ETag
|
string | 否 |
對象的base64編碼的128位MD5摘要。ETag是對象內(nèi)容的唯一標(biāo)識,可以通過該值識別對象內(nèi)容是否有變化。比如上傳對象時ETag為A,下載對象時ETag為B,則說明對象內(nèi)容發(fā)生了變化。實(shí)際的ETag是對象的哈希值。ETag只反映變化的內(nèi)容,而不是其元數(shù)據(jù)。上傳的對象或拷貝操作創(chuàng)建的對象,通過MD5加密后都有唯一的ETag。如果通過多段上傳對象,則無論加密方法如何,MD5會拆分ETag,此類情況ETag就不是MD5的摘要。 |
|
x-obs-id-2
|
string | 否 |
幫助定位問題的特殊符號。 |
|
x-obs-request-id
|
string | 否 |
由OBS創(chuàng)建來唯一確定本次請求的值,可以通過該值來定位問題。 |
|
x-obs-expiration
|
string | 否 |
當(dāng)對象單獨(dú)設(shè)置了對象lifecycle,過期時間以對象lifecycle為準(zhǔn),該消息頭用expiry-date描述對象的詳細(xì)過期信息;如果對象沒有設(shè)置對象lifecycle,設(shè)置了桶級別lifecycle,過期時間以桶級別lifecycle為準(zhǔn),該消息頭用expiry-date和rule-id兩個鍵值對描述對象的詳細(xì)過期信息;否則不顯示該頭域。 |
|
x-obs-website-redirect-location
|
string | 否 |
當(dāng)桶設(shè)置了Website配置,就可以設(shè)置對象元數(shù)據(jù)的這個屬性,Website接入點(diǎn)返回301重定向響應(yīng),將請求重定向到該屬性指定的桶內(nèi)的另一個對象或外部的URL。 |
|
x-obs-delete-marker
|
boolean | 否 |
標(biāo)識對象是否是刪除標(biāo)記。如果不是,則響應(yīng)中不會出現(xiàn)該消息頭。 |
|
x-obs-version-id
|
string | 否 |
對象的版本號。如果該對象無版本號,則響應(yīng)中不會出現(xiàn)該消息頭。 |
|
x-obs-server-side-encryption
|
string | 否 |
如果服務(wù)端加密是SSE-KMS方式,響應(yīng)包含該頭域。 |
|
x-obs-server-side-encryption-kms-key-id
|
string | 否 |
如果服務(wù)端加密是SSE-KMS方式,響應(yīng)包含該頭域,該頭域表示主密鑰。 格式為: regionID:domainID(租戶ID):key/key_id 其中regionID是使用密鑰所屬region的ID;domainID是使用密鑰所屬租戶的租戶ID;key_id是本次加密使用的密鑰ID。 |
|
x-obs-server-side-encryption-customer-algorithm
|
string | 否 |
如果服務(wù)端加密是SSE-C方式,響應(yīng)包含該頭域,該頭域表示解密使用的算法。 |
|
x-obs-server-side-encryption-customer-key-MD5
|
string | 否 |
如果服務(wù)端加密是SSE-C方式,響應(yīng)包含該頭域,該頭域表示解密使用的密鑰的MD5值。 |
|
x-obs-object-type
|
string | 否 |
對象為非Normal對象時,會返回此頭域,可取值為:Appendable。 |
|
x-obs-next-append-position
|
integer | 否 |
對象為Appendable對象時,會返回此頭域。 |
| 名稱 | 類型 | 必選 | 描述 |
|---|---|---|---|
|
-
|
file | 是 |
下載整個對象
指定Range下載對象(下載對象單個區(qū)間內(nèi)容)
指定Range下載對象(下載對象多個區(qū)間內(nèi)容)
下載縮放圖片
如果對象Etag值匹配則下載該對象
在URL中攜帶簽名下載對象
下載對象并重命名,使用response-content-disposition參數(shù)實(shí)現(xiàn)
下載對象并重命名,使用attname參數(shù)實(shí)現(xiàn)
