華為云計(jì)算 云知識(shí) 獲取桶的鏡像回源規(guī)則GetBucketMirrorBackToSource
獲取桶的鏡像回源規(guī)則GetBucketMirrorBackToSource

 

接口說(shuō)明

本接口用于查詢指定桶的 鏡像 回源策略。若策略存在,則返回成功,status code返回值為200。

URL
GET  https://obs.cn-north-4.myhuaweicloud.com/ 
請(qǐng)求參數(shù)
名稱 類型 IN 必選 描述
Authorization
 
string header

請(qǐng)求消息中可帶的簽名信息。

Date
 
string header

請(qǐng)求發(fā)起端的日期和時(shí)間,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默認(rèn)值:無(wú)。 條件:如果消息頭中帶了x-obs-date字段,則可以不帶該字段,其他情況下必選。

bucket_name
 
string query

請(qǐng)求的桶名稱。

mirrorBackToSource
 
string query

mirrorBackToSource表示請(qǐng)求桶的鏡像回源規(guī)則API。

返回參數(shù)
返回碼: 200

請(qǐng)求成功響應(yīng)消息。

名稱 類型 必選 描述
Content-Length
 
string

響應(yīng)消息體的字節(jié)長(zhǎng)度。

Connection
 
string

指明與服務(wù)器的連接是長(zhǎng)連接還是短連接。

Date
 
string

OBS系統(tǒng)響應(yīng)的時(shí)間。

ETag
 
string

對(duì)象的base64編碼的128位MD5摘要。ETag是對(duì)象內(nèi)容的唯一標(biāo)識(shí),可以通過(guò)該值識(shí)別對(duì)象內(nèi)容是否有變化。比如上傳對(duì)象時(shí)ETag為A,下載對(duì)象時(shí)ETag為B,則說(shuō)明對(duì)象內(nèi)容發(fā)生了變化。實(shí)際的ETag是對(duì)象的哈希值。ETag只反映變化的內(nèi)容,而不是其元數(shù)據(jù)。上傳的對(duì)象或拷貝操作創(chuàng)建的對(duì)象,通過(guò)MD5加密后都有唯一的ETag。如果通過(guò)多段上傳對(duì)象,則無(wú)論加密方法如何,MD5會(huì)拆分ETag,此類情況ETag就不是MD5的摘要。

x-obs-id-2
 
string

幫助定位問(wèn)題的特殊符號(hào)。

x-obs-request-id
 
string

由OBS創(chuàng)建來(lái)唯一確定本次請(qǐng)求的值,可以通過(guò)該值來(lái)定位問(wèn)題。

名稱 類型 必選 描述
BucketLoggingStatus
 
SetBucketMirrorBackToSourceRequestBody object  
200 BucketLoggingStatus
名稱 類型 必選 描述
rules
 
Array of rules objects

策略規(guī)則數(shù)組。 說(shuō)明: 同一個(gè)桶下的不同策略前綴不能重復(fù)和起始包含,委托建議使用同一個(gè)。

200 BucketLoggingStatus.rules
名稱 類型 必選 描述
id
 
string

規(guī)則ID。當(dāng)前桶上配置的鏡像回源規(guī)則的唯一標(biāo)識(shí)。 取值范圍:[1, 256],滿足“^[a-zA-Z0-9_-]{1, 256}$”

condition
 
condition object

觸發(fā)回源功能的條件。

redirect
 
redirect object

回源功能主要參數(shù)。

200 BucketLoggingStatus.rules.condition
名稱 類型 必選 描述
httpErrorCodeReturnedEquals
 
string

觸發(fā)回源功能的錯(cuò)誤碼。當(dāng)下載請(qǐng)求返回此錯(cuò)誤碼時(shí),會(huì)觸發(fā)回源功能。

objectKeyPrefixEquals
 
string

觸發(fā)回源功能的對(duì)象名前綴。當(dāng)觸發(fā)回源的請(qǐng)求里對(duì)象名滿足此前綴,才會(huì)繼續(xù)執(zhí)行回源功能。當(dāng)前綴配置為空時(shí),默認(rèn)所有對(duì)象都匹配。同一個(gè)桶上多條規(guī)則的前綴之間不允許重復(fù)和起始包含。 有效值:長(zhǎng)度[0, 1023],值允許為任意字符

200 BucketLoggingStatus.rules.redirect
名稱 類型 必選 描述
agency
 
string

委托名??蛻敉ㄟ^(guò)委托賦予OBS服務(wù)查詢用戶桶內(nèi)指定對(duì)象是否存在以及向用戶桶內(nèi)上傳對(duì)象的權(quán)限。

publicSource
 
publicSource object

公共可訪問(wèn)源端配置。當(dāng)源端為公共可訪問(wèn)的資源時(shí),必選。

retryConditions
 
Array of strings

回源地址切換的條件。

類型:數(shù)組

取值范圍:4XX,5XX以及400~499,500~599等具體錯(cuò)誤碼

說(shuō)明: 4XX和4開(kāi)頭的具體錯(cuò)誤碼不能同時(shí)配置,5XX和5開(kāi)頭的錯(cuò)誤碼不能同時(shí)配置。

最大支持同時(shí)配置20個(gè)錯(cuò)誤碼

passQueryString
 
boolean

是否攜帶請(qǐng)求字符串。如果是true,會(huì)將OBS請(qǐng)求中的queryString傳遞到源站。否則,則不會(huì)將queryString傳遞到源站。 該值默認(rèn)值是false,如果設(shè)置為false則會(huì)忽略。

說(shuō)明: 如果是true,但query里有簽名信息,則將簽名信息去掉,剩余參數(shù)再傳遞。

mirrorFollowRedirect
 
boolean

是否跟隨源站3xx重定向請(qǐng)求獲取到資源。如果是true,跟隨源站3xx重定向請(qǐng)求獲取到資源。否則,OBS會(huì)透?jìng)?XX響應(yīng),不獲取資源。該值默認(rèn)值是false,如果設(shè)置為false則會(huì)忽略。

redirectWithoutReferer
 
boolean

是否將原h(huán)ost作為referer頭域攜帶到重定向的目的地址去。false為需要攜帶, true為不攜帶。

mirrorAllowHttpMethod
 
Array of strings

需要透?jìng)鞯膆ttp請(qǐng)求的類型,如HEAD,目前只支持HEAD

mirrorHttpHeader
 
mirrorHttpHeader object

HTTP header傳遞規(guī)則。

replaceKeyWith
 
string

添加前后綴。去源端下載對(duì)象的時(shí)候,如果需要添加前綴或后綴,則修改此項(xiàng)配置為prefix${key}suffix。如果不需要增加前后綴,則配置為${key}。

取值范圍:prefix${key}suffix。

${key}為關(guān)鍵字,prefix為要添加的前綴,suffix為要添加的后綴。同時(shí)prefix和suffix的總長(zhǎng)度[0, 1023]

replaceKeyPrefixWith
 
string

替換前綴objectKeyPrefixEquals的字符串。如果去源端下載對(duì)象時(shí),需要替換當(dāng)前的對(duì)象名前綴,則修改此項(xiàng)配置。

如果replaceKeyWith和ReplaceKeyPrefixWith同時(shí)為空,則ReplaceKeyPrefixWith生效。同時(shí)非空為非法請(qǐng)求。

類型:字符串

取值范圍:長(zhǎng)度[0, 1023]

vpcEndpointURN
 
string

終端節(jié)點(diǎn)服務(wù)的URN。 取值范圍:長(zhǎng)度[0, 127]

200 BucketLoggingStatus.rules.redirect.publicSource
名稱 類型 必選 描述
sourceEndpoint
 
sourceEndpoint object

公共可訪問(wèn)的源端地址。

200 BucketLoggingStatus.rules.redirect.publicSource.sourceEndpoint
名稱 類型 必選 描述
master
 
Array of strings

主源端地址。如果源端為HTTP公共可訪問(wèn)的桶,則此地址為桶域名地址。如果源端為其他云廠商的私有桶,則此地址為區(qū)域域名地址。

有效取值:單個(gè)源站地址格式為https|http://xxx.yyy.zzz,長(zhǎng)度為[10, 255]

說(shuō)明: 回源時(shí)會(huì)優(yōu)先使用主源站地址,如果同時(shí)配置多個(gè)主地址,會(huì)輪詢?cè)L問(wèn)所有主地址。如果配置2個(gè)及以上主地址,第一次請(qǐng)求主地址失敗,并且滿足重試條件時(shí),會(huì)選用另一個(gè)主地址重試一次。 至少配置一個(gè)主地址。 最多同時(shí)配置5個(gè)主地址。

slave
 
Array of strings

備源端地址。如果源端為HTTP公共可訪問(wèn)的桶,則此地址為桶域名地址。如果源端為其他云廠商的私有桶,則此地址為區(qū)域域名地址。

有效取值:單個(gè)源站地址格式為https|http://xxx.yyy.zzz,長(zhǎng)度為[10, 255]

說(shuō)明: 主地址回源失敗時(shí),會(huì)選用一個(gè)備地址進(jìn)行重試。 最多同時(shí)配置5個(gè)備地址。

200 BucketLoggingStatus.rules.redirect.mirrorHttpHeader
名稱 類型 必選 描述
passAll
 
boolean

是否透?jìng)魅縃TTP header到源端。

以下HTTP header類型不支持透?jìng)? 1.以下前綴開(kāi)頭的header: x-obs- x-amz-

2.所有標(biāo)準(zhǔn)HTTP header,例如: Content-Length Authorization Date passAll與pass互斥。

pass
 
Array of strings

指定透?jìng)鞯腍TTP header列表。

取值范圍:最大10個(gè),每個(gè)長(zhǎng)度[1, 63],key只支持字母(大小寫)、數(shù)字、中劃線、下劃線

remove
 
Array of strings

不允許透?jìng)鞯腍TTP header列表。 remove優(yōu)先級(jí)高于pass和passAll。

取值范圍:最大10個(gè),每個(gè)長(zhǎng)度[1, 63],key只支持字母(大小寫)、數(shù)字、中劃線、下劃線

set
 
Array of set objects

設(shè)置透?jìng)鞯腍TTP header值列表。 set優(yōu)先級(jí)高于remove,pass和passAll。 如果自定義頭域中包含了Referer頭域,必須將redirectWithoutReferer設(shè)置為true,不然會(huì)被覆蓋

取值范圍:最大10個(gè)

200 BucketLoggingStatus.rules.redirect.mirrorHttpHeader.set
名稱 類型 必選 描述
key
 
string

設(shè)置需要透?jìng)鱄TTP header的關(guān)鍵字。

多條key之間不允許重復(fù)。 取值范圍:長(zhǎng)度[1, 63],只支持字母(大小寫)、數(shù)字、中劃線、下劃線

value
 
string

設(shè)置需要透?jìng)鱄TTP header的值。

取值范圍:長(zhǎng)度[0, 2048]

返回碼: 400

請(qǐng)求失敗響應(yīng)消息。

名稱 類型 必選 描述
Code
 
string

錯(cuò)誤響應(yīng)消息體XML中錯(cuò)誤響應(yīng)對(duì)應(yīng)的HTTP消息返回碼,具體的錯(cuò)誤碼請(qǐng)參見(jiàn)錯(cuò)誤碼-表2。

Message
 
string

錯(cuò)誤響應(yīng)消息體XML中具體錯(cuò)誤更全面、詳細(xì)的英文解釋,具體的錯(cuò)誤消息請(qǐng)參見(jiàn)錯(cuò)誤碼-表2。

RequestId
 
string

本次錯(cuò)誤請(qǐng)求的請(qǐng)求ID,用于錯(cuò)誤定位。

HostId
 
string

返回該消息的服務(wù)端ID。

Resource
 
string

該錯(cuò)誤相關(guān)的桶或?qū)ο筚Y源。

請(qǐng)求示例
示例 1
 
"/?mirrorBackToSource"
 
"GET /?mirrorBackToSource HTTP/1.1\nHost: bucketname.obs.cn-north-4.myhuaweicloud.com \nAuthorization: OBS H4IPJX0TQTHTHEBQQCEC:sc2PM13Wlfcoc/YZLK0MwsI2Zpo=\nDate: Tue, 21 Jul 2020 22:28:46 GMT\n"
返回示例
返回碼:200

請(qǐng)求成功響應(yīng)消息。

示例 1
 
HTTP/1.1 200 OK Server: OBS Date: Tue, 07 Jul 2020 07:28:46 GMT Content-Type: application/json Content-Length: 1063 { "rules": [{ "id": "abc123", "condition": { "httpErrorCodeReturnedEquals": 404, "objectKeyPrefixEquals": "video/" }, "redirect": { "agency": "agency", "publicSource": { "sourceEndpoint": { "master":["http://bucket1.xxx.yyy.com", "https://bucket2.xxx.yyy.com"], "slave": ["http://bucket3.xxx.yyy.com", "https://bucket4.xxx.yyy.com"] } }, "retryConditions": ["4XX", "5XX"], "passQueryString": true, "mirrorFollowRedirect": true, "redirectWithoutReferer": true, "mirrorHttpHeader": { "passAll": false, "pass": ["content-encoding"], "remove": ["content-type"], "set": [{ "key": "helloworld", "value": "2222" }] }, "replaceKeyWith": "prefix${key}suffix", "replaceKeyPrefixWith": "picture/", "vpcEndpointURN": "001" } }] }
錯(cuò)誤碼
請(qǐng)參考 錯(cuò)誤碼說(shuō)明