Skip to content

Latest commit

 

History

History
172 lines (139 loc) · 7.29 KB

获取桶的生命周期配置.md

File metadata and controls

172 lines (139 loc) · 7.29 KB

获取桶的生命周期配置

功能介绍

获取该桶设置的生命周期配置信息。

要正确执行此操作,需要确保执行者有GetLifecycleConfiguration执行权限。默认情况下只有桶的所有者可以执行此操作,也可以通过设置桶策略或用户策略授权给其他用户。

请求消息样式

GET /?lifecycle HTTP/1.1 
Host: bucketname.obs.cn-north-4.myhuaweicloud.com 
Date: date
Authorization: authorization

请求消息参数

该请求消息中不使用消息参数。

请求消息头

该请求使用公共消息头,具体参见表3

请求消息元素

该请求消息中不使用消息元素。

响应消息样式

HTTP/1.1 status_code
Date: date
Content-Type: application/xml 
Date: date
Content-Length: length

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<LifecycleConfiguration xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/"> 
    <Rule> 
        <ID>id</ID> 
        <Prefix>prefix</Prefix> 
        <Status>status</Status> 
        <Expiration> 
            <Date>date</Date> 
        </Expiration> 
        <NoncurrentVersionExpiration> 
            <NoncurrentDays>days</NoncurrentDays> 
        </NoncurrentVersionExpiration> 
        <Transition>  
         <Date>date</Date>  
         <StorageClass>WARM</StorageClass>  
        </Transition>  
        <Transition>  
         <Date>date</Date>  
         <StorageClass>COLD</StorageClass>  
        </Transition>  
        <NoncurrentVersionTransition>  
         <NoncurrentDays>30</NoncurrentDays>  
         <StorageClass>WARM</StorageClass>  
        </NoncurrentVersionTransition>  
        <NoncurrentVersionTransition>  
         <NoncurrentDays>60</NoncurrentDays>  
         <StorageClass>COLD</StorageClass>  
        </NoncurrentVersionTransition> 
        <AbortIncompleteMultipartUpload>
            <DaysAfterInitiation>10</DaysAfterInitiation>
        </AbortIncompleteMultipartUpload>
    </Rule> 
</LifecycleConfiguration>

响应消息头

该请求的响应消息使用公共消息头,具体请参考表1

响应消息元素

在此请求返回的响应消息体中包含的配置元素如下表1描述。

表 1 生命周期配置元素

名称 描述
Date 指定OBS对该日期之前的对象执行生命周期规则。日期格式必须为ISO8601的格式,并且为UTC的零点。 例如:2018-01-01T00:00:00.000Z,表示将最后修改时间早于2018-01-01T00:00:00.000Z的对象删除或转换成其他存储类型,等于或晚于这个时间的对象不会被删除或转储。类型:String父节点:Expiration, Transition
Days 指定在对象最后修改时间的多少天后执行生命周期规则(仅针对对象的最新版本)。类型:Integer父节点:Expiration, Transition
ExpiredObjectDeleteMarker 表示是否删除过期删除标记,可以配置true和false。当配置true时,生命周期才会删除,当配置false时,不会删除。类型:Boolean父节点:Expiration
StorageClass 表示对象将被修改成存储级别。类型:String取值范围:WARM或COLD父节点:Transition, NoncurrentVersionTransition
Transition 生命周期配置中表示迁移时间和迁移后对象存储级别的元素(仅针对对象的最新版本)类型:XML子节点:Date或Days父节点:Rule
Expiration 生命周期配置中表示过期时间的Container。类型:XML子节点:Date或Days或ExpiredObjectDeleteMarker父节点:Rule
ID 一条Rule的标识,由不超过255个字符的字符串组成。类型:String父节点:Rule
LifecycleConfiguration 生命周期配置Rule的Container。可以配置多条Rule,但需保证整个配置消息体总大小不超过20KB。类型:XML子节点:Rule父节点:无
NoncurrentDays 表示对象在成为历史版本之后第几天时规则生效。类型:Integer父节点:NoncurrentVersionExpiration, NoncurrentVersionTransition
NoncurrentVersionTransition 生命周期配置中表示对象的历史版本迁移时间和迁移后对象存储级别的元素。类型:XML子节点:NoncurrentDays, StorageClass父节点:Rule
NoncurrentVersionExpiration 生命周期配置中表示历史版本过期时间的Container。您可以将该动作设置在已启用多版本(或暂停)的桶,来让系统删除对象的满足特定生命周期的历史版本。类型:XML子节点:NoncurrentDays父节点:Rule
AbortIncompleteMultipartUpload 生命周期配置中表示未合并的多段任务(碎片)的过期属性Container类型:XML子节点:DaysAfterInitiation父节点:Rule
DaysAfterInitiation 指定未合并的多段任务(碎片)的生命周期规则,在多段任务初始化过后多少天生效。类型:Integer父节点:AbortIncompleteMultipartUpload
Prefix 对象名前缀,用以标识哪些对象可以匹配到当前这条Rule。类型:String父节点:Rule
Rule 具体某一条生命周期配置的Container。类型:Container父节点:LifecycleConfiguration
Status 标识当前这条Rule是否启用。类型:String父节点:Rule有效值:Enabled,Disabled

错误响应消息

此请求可能的特殊错误如下表2描述。

表 2 特殊错误

错误码 描述 HTTP状态码
NoSuchLifecycleConfiguration 桶的生命周期配置不存在 404 Not Found

其余错误已经包含在表2中。

请求示例

GET /?lifecycle HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 03:06:56 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:/Nof9FCNANfzIXDS0NDp1IfDu8I=

响应示例

HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: BF260000016436BA5684FF5A10370EDB
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSEMKZSIeboCA1eAukgYOOAd7oX3ZONn
Content-Type: application/xml
Date: WED, 01 Jul 2015 03:06:56 GMT
Content-Length: 919

<?xml version="1.0" encoding="utf-8"?>
<LifecycleConfiguration> 
  <Rule> 
    <ID>delete-2-days</ID> 
    <Status>Enabled</Status>  
    <Expiration> 
      <Days>2</Days> 
    </Expiration>  
    <NoncurrentVersionExpiration> 
      <NoncurrentDays>5</NoncurrentDays> 
    </NoncurrentVersionExpiration>
    <Transition> 
      <Days>30</Days>  
      <StorageClass>WARM</StorageClass> 
    </Transition>  
    <Transition> 
      <Days>60</Days>  
      <StorageClass>COLD</StorageClass> 
    </Transition>  
    <NoncurrentVersionTransition> 
      <NoncurrentDays>30</NoncurrentDays>  
      <StorageClass>WARM</StorageClass> 
    </NoncurrentVersionTransition>  
    <NoncurrentVersionTransition> 
      <NoncurrentDays>60</NoncurrentDays>  
      <StorageClass>COLD</StorageClass> 
    </NoncurrentVersionTransition> 
    <AbortIncompleteMultipartUpload>
        <DaysAfterInitiation>10</DaysAfterInitiation>
    </AbortIncompleteMultipartUpload>
  </Rule>
</LifecycleConfiguration>