0016-00000609

更新时间:2025-01-13 07:06:25

问题描述

批量删除操作请求体XML中包含待删除Object数量过多。

问题原因

您发起了DeleteMultipleObjects请求,但是单次请求删除的Object数量超出限制。目前该接口单次请求最多支持删除1000Object。

问题示例

以下DeleteMultipleObjects请求中删除的Object数量超出限制,导致请求报错。

POST /?delete HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 29 Feb 2012 12:26:16 GMT
Content-Length:151
Content-MD5: ohhnqLBJFiKkPSBO1eNaUA==
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<BatchDelete> 
  <Quiet>false</Quiet>  
  <Object> 
    <Key>1.data</Key> 
  </Object>  
  <Object> 
    <Key>2.data</Key> 
  </Object> 
  ...(此处省略1000个Object节点)...
  <Object> 
    <Key>1003.jpg</Key> 
  </Object> 
 </BatchDelete>

解决方案

确保单次DeleteMultipleObjects请求删除Object数量不超过1000个。

POST /?delete HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 29 Feb 2012 12:26:16 GMT
Content-Length:151
Content-MD5: ohhnqLBJFiKkPSBO1eNaUA==
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<Delete> 
  <Quiet>false</Quiet>  
  <Object> 
    <Key>multipart.data</Key> 
  </Object>  
  <Object> 
    <Key>test.jpg</Key> 
  </Object>  
  <Object> 
    <Key>demo.jpg</Key> 
  </Object> 
</Delete>

如果您需要删除更多数量的Object,您可以选择以下任意方式进行删除。

  • 多次调用DeleteMultipleObjects接口进行删除。

  • 通过命令行工具ossutil以及图形化管理工具ossbrowser一次最多可删除的文件无个数限制。

  • 如果需要删除的文件数目较多,且删除的文件有一定的规律,例如需要定期删除指定日期之前的文件,指定前缀的文件,又或者需要清空整个Bucket内的所有文件。此时,推荐您配置生命周期规则自动删除文件。生命周期规则配置完成后,OSS会根据规则自动删除指定文件,减少您发送删除请求的次数,以提高删除效率。

相关文档

  • 本页导读 (1)
  • 问题描述
  • 问题原因
  • 问题示例
  • 解决方案
  • 相关文档
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等