全部產品
Search
文件中心

Object Storage Service:0014-00000060

更新時間:Apr 15, 2025

問題描述

PutBucketLifecycle請求的請求體XML中Expiration節點下缺少DaysCreatedBeforeDateExpiredObjectDeleteMarker子節點。

問題原因

請求體XML中Expiration節點下如果不存在ExpiredObjectDeleteMarker子節點,或者子節點的值為false,則必須指定DaysCreatedBeforeDate子節點,否則請求錯誤。

問題樣本

以下請求體XML中Expiration節點下缺少DaysCreatedBeforeDate子節點。

PUT /?lifecycle HTTP/1.1
Host: oss-example.oss.aliyuncs.com
Content-Length: 336
Date: Mon , 6 May 2019 15:23:20 GMT
Authorization: OSS LTAI**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
  <Rule>
    <ID>rule1</ID>
    <Prefix>zzz</Prefix>
    <Status>Enabled</Status>
    <Expiration>
    </Expiration>
  </Rule>
</LifecycleConfiguration>

解決方案

  • 在請求體XML中Expiration節點下添加DaysCreatedBeforeDate子節點。

    • Days:用於指定生命週期規則在距離Object最後更新多少天后生效。

    • CreatedBeforeDate:用於指定一個日期,OSS會對最後更新時間早於該日期的資料執行生命週期規則。日期格式為yyyy-MM-ddT00:00:00.000Z。日期需要按照ISO8601標準表示並使用UTC時間,且必須為UTC的零點。

    以請求體XML中Expiration節點下添加Days為例。

    PUT /?lifecycle HTTP/1.1
    Host: oss-example.oss-cn-hangzhou.aliyuncs.com
    Content-Length: 336
    Date: Mon , 6 May 2019 15:23:20 GMT
    Authorization: OSS LTAI****************:77Dv****************
    <?xml version="1.0" encoding="UTF-8"?>
    <LifecycleConfiguration>
      <Rule>
        <ID>rule1</ID>
        <Prefix>zzz</Prefix>
        <Status>Enabled</Status>
        <Expiration>
        	<Days>200</Days>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 通過OSS管理主控台配置生命週期規則,避免手動構造請求體。

相關文檔