獲取該桶設(shè)置的生命周期配置信息。
要正確執(zhí)行此操作,需要確保執(zhí)行者有GetLifecycleConfiguration執(zhí)行權(quán)限。默認情況下只有桶的所有者可以執(zhí)行此操作,也可以通過設(shè)置桶策略或用戶策略授權(quán)給其他用戶。
名稱 | 類型 | IN | 必選 | 描述 |
---|---|---|---|---|
Authorization
|
string | header | 是 |
請求消息中可帶的簽名信息。 |
Date
|
string | header | 否 |
請求發(fā)起端的日期和時間,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默認值:無。 條件:如果消息頭中帶了x-obs-date字段,則可以不帶該字段,其他情況下必選。 |
bucket_name
|
string | query | 是 |
請求的桶名稱。 |
lifecycle
|
string | query | 是 |
lifecycle表示請求桶聲明周期API。 |
成功請求響應(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)容的唯一標識,可以通過該值識別對象內(nèi)容是否有變化。比如上傳對象時ETag為A,下載對象時ETag為B,則說明對象內(nèi)容發(fā)生了變化。實際的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)建來唯一確定本次請求的值,可以通過該值來定位問題。 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
LifecycleConfiguration
|
SetBucketLifecycleRequestBody object | 否 |
桶的生命周期配置信息。 如果桶的多版本是Enabled或者Suspended,那么可以設(shè)置NoncurrentVersionTransition或NoncurrentVersionExpiration來控制對象的歷史版本的生命周期。一個歷史版本的生命周期,取決于它成為歷史版本的時刻(即被新版本覆蓋的那個時刻)和NoncurrentDays。對于刪除來說,例如NoncurrentDays配置為1的話,表示當一個版本成為歷史版本之后,再過1天才能刪除。對象A的版本V1創(chuàng)建于1號,5號的時候又上傳新的版本V2,此時V1成為歷史版本,那么再過1天,7號的0點,V1就過期了。如果該版本不滿足刪除, 遷移 配置NoncurrentDays為1,StorageClass為WARM的話,表示當一個版本成為歷史版本之后,再過1天轉(zhuǎn)為溫對象。對象A的版本V1創(chuàng)建于1號,5號的時候又上傳新的版本V2,此時V1成為歷史版本,那么再過1天,7號的0點,V1就會遷移成溫對象了。(備注:對象過期后被刪除或?qū)ο筮w移的時間可能會有一定的延遲,一般不超過48小時。) 如果桶的多版本是Enabled或者Suspended,且最新版本對象滿足Expiration規(guī)則時的處理: 桶當前的多版本狀態(tài)為Enabled: 如果對象的最新版本不是deletemarker,則該對象會產(chǎn)生一個新的deletemarker; 如果最新版本是deletemarker,且該對象只有這一個版本,則這個版本會被刪除; 如果最新版本是deletemarker,且對象還有其他版本,則該對象的所有版本維持不變,沒有新增和刪除,也不會被修改(即無任何變化)。 桶當前的多版本狀態(tài)為Suspended: 如果對象的最新版本不是deletemarker,且版本不是null版本,則會產(chǎn)生一個新的null版本的deletemarker; 如果對象的最新版本不是deletemarker,且版本是null版本,則這個null版本會被新產(chǎn)生的null版本的deletemarker覆蓋; 如果最新版本是deletemarker,且該對象只有這一個版本,則這個版本會被刪除; 如果最新版本是deletemarker,且對象還有其他版本,則該對象的所有版本維持不變,沒有新增和刪除,也不會被修改(即無任何變化)。 如果桶的多版本是Enabled或者Suspended,且最新版本對象滿足Transition規(guī)則時的處理: 如果對象的最新版本是deletemarker,則這個版本不被遷移; 如果最新版本不是deletemarker,且該對象滿足遷移條件,則這個版本會被遷移。 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
Rule
|
Array of Rule objects | 是 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
ID
|
string | 否 |
一條Rule的標識,由不超過255個字符的字符串組成。 |
Prefix
|
string | 是 |
對象名前綴,用以標識哪些對象可以匹配到當前這條Rule。 約束: 1.當按前綴配置時,如果指定的前綴名與某條已配置的生命周期規(guī)則指定的前綴名存在包含關(guān)系,OBS會將兩條規(guī)則視為同一條,而禁止您配置本條規(guī)則。例如,系統(tǒng)中已存在指定前綴名為“abc”的規(guī)則,則不允許再配置指定前綴以“abc”字段開頭的規(guī)則。 2.如果已存在按前綴配置的生命周期規(guī)則,則不允許再新增配置到整個桶的規(guī)則。 |
Status
|
string | 是 |
標識當前這條Rule是否啟用。 |
Expiration
|
Expiration object | 否 |
生命周期配置中表示過期時間的Container(僅針對對象的最新版本)。 如果沒有Transition, NoncurrentVersionTransition, NoncurrentVersionExpiration, AbortIncompleteMultipartUpload則必選。 |
NoncurrentVersionExpiration
|
NoncurrentVersionExpiration object | 否 |
生命周期配置中表示歷史版本過期時間的Container。您可以將該動作設(shè)置在已啟用多版本(或暫停)的桶,來讓系統(tǒng)刪除對象的滿足特定生命周期的歷史版本(僅針對歷史版本)。 |
Transition
|
Array of Transition objects | 否 |
生命周期配置中表示遷移時間和遷移后 對象存儲 級別的元素(僅針對對象的最新版本)。 如果沒有NoncurrentVersionTransition, Expiration, NoncurrentVersionExpiration, AbortIncompleteMultipartUpload則必選。 |
NoncurrentVersionTransition
|
Array of NoncurrentVersionTransition objects | 否 |
生命周期配置中表示對象的歷史版本遷移時間和遷移后對象存儲級別的元素。 |
AbortIncompleteMultipartUpload
|
AbortIncompleteMultipartUpload object | 否 |
生命周期配置中表示未合并的多段任務(wù)(碎片)的過期屬性Container。 如果沒有Transition, Expiration, NoncurrentVersionExpiration, NoncurrentVersionTransition則必選。 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
Date
|
string | 否 |
指定OBS對該日期之前的對象執(zhí)行生命周期規(guī)則。日期格式必須為ISO8601的格式,并且為UTC的零點。 例如:2018-01-01T00:00:00.000Z,表示將最后修改時間早于2018-01-01T00:00:00.000Z的對象刪除或轉(zhuǎn)換成其他存儲類型,等于或晚于這個時間的對象不會被刪除或轉(zhuǎn)儲。 如果沒有Days元素,則必選。 |
Days
|
integer | 否 |
指定生命周期規(guī)則在對象最后更新過后多少天生效(僅針對對象的最新版本)。 如果沒有Date元素,則必選。 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
NoncurrentDays
|
integer | 否 |
表示對象在成為歷史版本之后第幾天時規(guī)則生效(僅針對歷史版本)。 如果有NoncurrentVersionExpiration或NoncurrentVersionTransition元素,則必選。 |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
Date
|
string | 否 |
指定OBS對該日期之前的對象執(zhí)行生命周期規(guī)則。日期格式必須為ISO8601的格式,并且為UTC的零點。 例如:2018-01-01T00:00:00.000Z,表示將最后修改時間早于2018-01-01T00:00:00.000Z的對象刪除或轉(zhuǎn)換成其他存儲類型,等于或晚于這個時間的對象不會被刪除或轉(zhuǎn)儲。 如果沒有Days元素,則必選。 |
Days
|
integer | 否 |
指定生命周期規(guī)則在對象最后更新過后多少天生效(僅針對對象的最新版本)。 如果沒有Date元素,則必選。 |
StorageClass
|
string | 否 |
表示對象將被修改成存儲級別。 取值范圍: WARM或COLD |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
NoncurrentDays
|
integer | 否 |
表示對象在成為歷史版本之后第幾天時規(guī)則生效(僅針對歷史版本)。 |
StorageClass
|
string | 否 |
表示對象將被修改成存儲級別。 取值范圍: WARM或COLD |
名稱 | 類型 | 必選 | 描述 |
---|---|---|---|
DaysAfterInitiation
|
integer | 否 |
指定未合并的多段任務(wù)(碎片)的生命周期規(guī)則,在多段任務(wù)初始化過后多少天生效。 如果有AbortIncompleteMultipartUpload則必選。 |
請求失敗響應(yīng)消息。
請求失敗響應(yīng)消息。 除了公共的錯誤碼外,此接口還會返回一些其他的錯誤碼。下面列出本接口的一些常見錯誤,以及可能原因。
錯誤碼 | 描述 | HTTP狀態(tài)碼 |
---|---|---|
NoSuchLifecycleConfiguration | 桶的生命周期配置不存在。 | 404 Not Found |