0014-00000056

Updated at:

Problem description

The XML request body of the PutBucketLifecycle request contains an unsupported child node.

Causes

The PutBucketLifecycle request failed because the request body contains the unsupported child node Date in the Expiration node.

Example problem

In the following example, the unsupported child node Date is specified in the Expiration node.

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 qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
  <Rule>
    <ID>rule1</ID>
    <Prefix>zzz</Prefix>
    <Status>Enabled</Status>
    <Expiration>
    	<Date>2021-12-30T00:00:00.000Z</Date>
    </Expiration>
  </Rule>
</LifecycleConfiguration>

Solutions

  • Ensure that only valid child nodes are specified in the Expiration node of the XML request body.

    The Expiration node supports the following child nodes:

    • Days: Specifies the number of days after an object is last modified before the lifecycle rule takes effect.

    • CreatedBeforeDate: Specifies a date. OSS applies the lifecycle rule to objects that were last modified before this date. The date must be in UTC and in the ISO 8601 format yyyy-MM-ddT00:00:00.000Z. The time must be set to midnight (00:00:00).

  • You can configure lifecycle rules in the OSS console to avoid manually creating the request body.

References