問題の説明
PutBucketLifecycleリクエストのリクエストボディXMLには、冗長ノードが存在します。
発生原因
PutBucketLifecycleリクエストを送信します。 リクエストボディXMLには複数の重複ノードが存在し、API操作ではそのようなノードを1つだけ設定する必要があります。 リクエストエラーが発生します
例
たとえば、次のリクエストボディXMLでは、Filterノードに2つのNot子ノードが設定されていますが、API操作ではNotノードを1つだけ設定する必要があります。
PUT /? ライフサイクルHTTP/1.1
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
コンテンツ-長さ: 336
日付: 5月6日月曜日2019 15:23:20 GMT
承認: OSS Wnjl3fg9fdv8fg4b ****:Phuu8bBhS8dsff2a ****
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
<Rule>
<ID>rule1</ID>
<Prefix></Prefix>
<Status>Enabled</Status>
<フィルター>
<しない>
<Prefix> テスト </Prefix>
</Not>
<しない>
<プレフィックス> abc</プレフィックス>
</Not>
</フィルター>
<Expiration>
<CreatedBeforeDate>2021-12-30T00:00:00.000Z</CreatedBeforeDate>
</Expiration>
</ルール>
</LifecycleConfiguration>
ソリューション
返されたErrorMessageに基づいて冗長ノードを削除します。
OSSコンソールでライフサイクルルールを設定して、リクエストボディを手動で作成しないようにします。