多版本功能可在用戶意外覆蓋或刪除對象的情況下提供一種恢復手段。用戶可以使用多版本功能來保存、檢索和還原對象的各個版本,這樣用戶能夠從意外操作或應用程序故障中輕松恢復數(shù)據(jù)。多版本功能還可用于數(shù)據(jù)保留和存檔。
默認情況下,桶沒有設(shè)置多版本功能。
本接口設(shè)置桶的多版本狀態(tài),用來開啟或暫停桶的多版本功能。
設(shè)置桶的多版本狀態(tài)為Enabled,開啟桶的多版本功能:
上傳對象時,系統(tǒng)為每一個對象創(chuàng)建一個唯一版本號,上傳同名的對象將不再覆蓋舊的對象,而是創(chuàng)建新的不同版本號的同名對象 可以指定版本號下載對象,不指定版本號默認下載最新對象; 刪除對象時可以指定版本號刪除,不帶版本號刪除對象僅產(chǎn)生一個帶唯一版本號的刪除標記,并不刪除對象; 列出桶內(nèi)對象列表時默認列出最新對象列表,可以指定列出桶內(nèi)所有版本對象列表; 除了刪除標記外,每個版本的 對象存儲 均需計費(不包括對象元數(shù)據(jù))。 設(shè)置桶的多版本狀態(tài)為Suspended,暫停桶的多版本功能:
舊的版本數(shù)據(jù)繼續(xù)保留 ; 上傳對象時創(chuàng)建對象的版本號為null,上傳同名的對象將覆蓋原有同名的版本號為null的對象; 可以指定版本號下載對象,不指定版本號默認下載最新對象; 刪除對象時可以指定版本號刪除,不帶版本號刪除對象將產(chǎn)生一個版本號為null的刪除標記,并刪除版本號為null的對象; 除了刪除標記外,每個版本的對象存儲均需計費(不包括對象元數(shù)據(jù))。 只有桶的所有者可以設(shè)置桶的多版本狀態(tài)。
| 名稱 | 類型 | IN | 必選 | 描述 |
|---|---|---|---|---|
|
Authorization
|
string | header | 是 |
請求消息中可帶的簽名信息。 |
|
Date
|
string | header | 否 |
請求發(fā)起端的日期和時間,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默認值:無。 條件:如果消息頭中帶了x-obs-date字段,則可以不帶該字段,其他情況下必選。 |
|
bucket_name
|
string | query | 是 |
請求的桶名稱。 |
|
versioning
|
string | query | 是 |
versioning表示請求桶的多版本狀態(tài)API。 |
| 名稱 | 類型 | 必選 | 描述 |
|---|---|---|---|
|
Status
|
string | 是 |
標識桶的多版本狀態(tài)。 |
成功請求響應。
| 名稱 | 類型 | 必選 | 描述 |
|---|---|---|---|
|
Content-Length
|
string | 否 |
響應消息體的字節(jié)長度。 |
|
Connection
|
string | 否 |
指明與服務器的連接是長連接還是短連接。 |
|
Date
|
string | 否 |
OBS系統(tǒ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)建來唯一確定本次請求的值,可以通過該值來定位問題。 |
