tencent cloud

对象存储

动态与公告
产品动态
产品公告
产品简介
产品概述
功能概览
应用场景
产品优势
基本概念
地域和访问域名
规格与限制
产品计费
计费概述
计费方式
计费项
免费额度
计费示例
查看和下载账单
欠费说明
常见问题
快速入门
控制台快速入门
COSBrowser 快速入门
用户指南
创建请求
存储桶
对象
数据管理
批量处理
全球加速
监控与告警
运维中心
数据处理
内容审核
智能工具箱
数据工作流
应用集成
工具指南
工具概览
环境安装与配置
COSBrowser 工具
COSCLI 工具
COSCMD 工具
COS Migration 工具
FTP Server 工具
Hadoop 工具
COSDistCp 工具
HDFS TO COS 工具
GooseFS-Lite 工具
在线辅助工具
自助诊断工具
实践教程
概览
访问控制与权限管理
性能优化
使用 AWS S3 SDK 访问 COS
数据容灾备份
域名管理实践
图片处理实践
COS 音视频播放器实践
工作流实践
数据直传
内容审核实践
数据安全
数据校验
大数据实践
COS 成本优化解决方案
在第三方应用中使用 COS
迁移指南
本地数据迁移至 COS
第三方云存储数据迁移至 COS
以 URL 作为源地址的数据迁移至 COS
COS 之间数据迁移
Hadoop 文件系统与 COS 之间的数据迁移
数据湖存储
云原生数据湖
元数据加速
数据加速器 GooseFS
数据处理
数据处理概述
图片处理
媒体处理
内容审核
文件处理
文档处理
故障处理
获取 RequestId 操作指引
通过外网上传文件至 COS 缓慢
访问 COS 时返回403错误码
资源访问异常
POST Object 常见异常
API 文档
简介
公共请求头部
公共响应头部
错误码
请求签名
操作列表
Service 接口
Bucket 接口
Object 接口
批量处理接口
数据处理接口
任务与工作流
内容审核接口
云查毒接口
SDK 文档
SDK 概览
准备工作
Android SDK
C SDK
C++ SDK
.NET(C#) SDK
Flutter SDK
Go SDK
iOS SDK
Java SDK
JavaScript SDK
Node.js SDK
PHP SDK
Python SDK
React Native SDK
小程序 SDK
错误码
鸿蒙(Harmony) SDK
终端 SDK 质量优化
安全与合规
数据容灾
数据安全
访问管理
常见问题
热门问题
一般性问题
计费计量问题
域名合规问题
存储桶配置问题
域名和 CDN 问题
文件操作问题
日志监控问题
权限管理问题
数据处理问题
数据安全问题
预签名 URL 问题
SDK 类问题
工具类问题
API 类问题
服务协议
Service Level Agreement
隐私政策
数据处理和安全协议
联系我们
词汇表

DELETE Multiple Objects

PDF
聚焦模式
字号
最后更新时间: 2025-09-09 17:20:19

功能描述

DELETE Multiple Objects 接口请求可以批量删除指定存储桶中的多个对象(Object),单次请求支持最多删除1000个对象。对于响应结果,COS 提供 Quiet 模式和 Verbose 模式:
Quiet 模式在响应中仅包含删除失败的对象信息和错误信息。
Verbose 模式在响应中包含每个对象的删除结果信息。
该 API 的请求者需要对存储桶有写入权限。


授权说明

匿名访问场景下,需要将授权策略中 action 设置为 ["name/cos:DeleteObject","name/cos:DeleteMultipleObjects"];非匿名场景下,会对每个删除的对象逐个检查当前账号是否有 cos:DeleteObject 的权限。查看所有 action

版本控制

当启用版本控制时,该请求操作可以为每一个要删除的对象指定版本 ID,此时将永久删除对象的指定版本或指定删除标记,否则将创建一个删除标记作为指定对象的最新版本。
当针对某个对象的删除操作创建或删除了删除标记,那么该对象的删除结果将同时返回 <DeleteMarker>true</DeleteMarker> 和 <DeleteMarkerVersionId> 元素,代表该请求操作创建或删除了指定对象的删除标记。
当针对某个对象的删除操作永久删除了特定的版本 ID(包括删除标记的版本 ID),那么该对象的删除结果将返回 <VersionId> 元素,代表该请求操作删除的版本 ID。

请求

请求示例

POST /?delete HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: GMT Date
Content-Type: application/xml
Content-Length: Content Length
Content-MD5: MD5
Authorization: Auth String

[Request Body]
说明
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com,其中 <BucketName-APPID> 为带 APPID 后缀的存储桶名字,例如 examplebucket-1250000000,详情请参见 存储桶概览 > 基本信息存储桶概述 > 存储桶命名规范 文档;<Region> 为 COS 的可用地域,详情请参见 地域和访问域名 文档。
Authorization: Auth String(详情请参见 请求签名 文档)。

请求参数

此接口无请求参数。

请求头

此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

请求体

提交 application/xml 请求数据,包含要删除的对象信息。
<Delete>
<Quiet>boolean</Quiet>
<Object>
<Key>string</Key>
</Object>
<Object>
<Key>string</Key>
<VersionId>string</VersionId>
</Object>
</Delete>
具体的节点描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Delete
包含 DELETE Multiple Objects 操作的所有请求信息
Container
Container 节点 Delete 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
Quiet
Delete
布尔值,默认为 false
true 为使用 Quiet 模式,在响应中仅包含删除失败的对象信息和错误信息
false 为使用 Verbose 模式,在响应中包含每个对象的删除结果
注意:
当指定的 Key 为空或者不存在,COS 本身不会返回报错信息。
boolean
Object
Delete
单个要删除的目标对象的信息
Container
Container 节点 Object 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
Key
Delete.Object
要删除的目标对象的对象键(Key 无需以 / 开头)
string
VersionId
Delete.Object
当启用版本控制并且要删除对象的指定版本时需指定该元素,值为要删除的版本 ID。若未开启版本控制或开启版本控制但需要插入删除标记,则无需指定该元素
string

响应

响应头

此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

响应体

请求成功,返回 application/xml 数据,包含删除结果信息。
<DeleteResult>
<Deleted>
<Key>string</Key>
<DeleteMarker>boolean</DeleteMarker>
<DeleteMarkerVersionId>string</DeleteMarkerVersionId>
</Deleted>
<Deleted>
<Key>string</Key>
<VersionId>string</VersionId>
</Deleted>
<Deleted>
<Key>string</Key>
<DeleteMarker>boolean</DeleteMarker>
<DeleteMarkerVersionId>string</DeleteMarkerVersionId>
<VersionId>string</VersionId>
</Deleted>
<Error>
<Key>string</Key>
<VersionId>string</VersionId>
<Code>string</Code>
<Message>string</Message>
</Error>
</DeleteResult>
具体的节点描述如下:
节点名称(关键字)
父节点
描述
类型
DeleteResult
保存 DELETE Multiple Objects 结果的所有信息
Container
Container 节点 DeleteResult 的内容:
节点名称(关键字)
父节点
描述
类型
Deleted
DeleteResult
单个删除成功的对象条目,仅当使用 Verbose 模式才会返回该元素
Container
Error
DeleteResult
单个删除失败的对象条目
Container
Container 节点 Deleted 的内容:
节点名称(关键字)
父节点
描述
类型
Key
DeleteResult.Deleted
删除成功的对象的对象键
string
DeleteMarker
DeleteResult.Deleted
仅当对该对象的删除创建了一个删除标记,或删除的是该对象的一个删除标记时才返回该元素,布尔值,固定为 true
boolean
DeleteMarkerVersionId
DeleteResult.Deleted
仅当对该对象的删除创建了一个删除标记,或删除的是该对象的一个删除标记时才返回该元素,值为创建或删除的删除标记的版本 ID
string
VersionId
DeleteResult.Deleted
删除成功的版本 ID,仅当请求中指定了要删除对象的版本 ID 时才返回该元素
string
Container 节点 Error 的内容:
节点名称(关键字)
父节点
描述
类型
Key
DeleteResult.Error
删除失败的对象的对象键
string
VersionId
DeleteResult.Error
删除失败的版本 ID,仅当请求中指定了要删除对象的版本 ID 时才返回该元素
string
Code
DeleteResult.Error
删除失败的错误码,用来定位唯一的错误条件和确定错误场景
string
Message
DeleteResult.Error
删除失败的具体错误信息
string

错误码

此接口遵循统一的错误响应和错误码,详情请参见 错误码 文档。

实际案例

案例一:简单案例

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Tue, 20 Aug 2019 11:59:35 GMT
Content-Type: application/xml
Content-Length: 158
Content-MD5: zUd/xgzNGDrqJMJUOWV2AQ==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566302375;1566309575&q-key-time=1566302375;1566309575&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>false</Quiet>
<Object>
<Key>example-object-1.jpg</Key>
</Object>
<Object>
<Key>example-object-2.jpg</Key>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 144
Connection: close
Date: Tue, 20 Aug 2019 11:59:35 GMT
Server: tencent-cos
x-cos-request-id: NWQ1YmUwYTdfM2FiMDJhMDlfYzczN18zMGM1****

<DeleteResult>
<Deleted>
<Key>example-object-1.jpg</Key>
</Deleted>
<Deleted>
<Key>example-object-2.jpg</Key>
</Deleted>
</DeleteResult>

案例二:简单案例(Quiet 模式)

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Tue, 20 Aug 2019 12:12:26 GMT
Content-Type: application/xml
Content-Length: 157
Content-MD5: +iI9kJvM2k/y5y3nHcn8BQ==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566303146;1566310346&q-key-time=1566303146;1566310346&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>true</Quiet>
<Object>
<Key>example-object-1.jpg</Key>
</Object>
<Object>
<Key>example-object-2.jpg</Key>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 15
Connection: close
Date: Tue, 20 Aug 2019 12:12:27 GMT
Server: tencent-cos
x-cos-request-id: NWQ1YmUzYWFfMTljMDJhMDlfNTg3ZV8zNDI0****

<DeleteResult/>

案例三:启用版本控制(创建删除标记)

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Wed, 21 Aug 2019 12:04:03 GMT
Content-Type: application/xml
Content-Length: 100
Content-MD5: MowFtlG7iwK7Wmk79IVXFA==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566389043;1566396243&q-key-time=1566389043;1566396243&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>false</Quiet>
<Object>
<Key>example-object-1.jpg</Key>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 200
Connection: close
Date: Wed, 21 Aug 2019 12:04:03 GMT
Server: tencent-cos
x-cos-request-id: NWQ1ZDMzMzNfNDhiNDBiMDlfMmIzNzZfMTBh****

<DeleteResult>
<Deleted>
<Key>example-object-1.jpg</Key>
<DeleteMarker>true</DeleteMarker>
<DeleteMarkerVersionId>MTg0NDUxNzc2ODQ2NjU3ODM4NTc</DeleteMarkerVersionId>
</Deleted>
</DeleteResult>

案例四:删除指定版本

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Wed, 21 Aug 2019 11:24:43 GMT
Content-Type: application/xml
Content-Length: 154
Content-MD5: EwFydeQSMzaHWi0qMTOGWw==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566386683;1566393883&q-key-time=1566386683;1566393883&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>false</Quiet>
<Object>
<Key>example-object-2.jpg</Key>
<VersionId>MTg0NDUxNzc2ODcwMjYyNjIwMTM</VersionId>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 140
Connection: close
Date: Wed, 21 Aug 2019 11:24:44 GMT
Server: tencent-cos
x-cos-request-id: NWQ1ZDI5ZmJfNDhiNDBiMDlfMmIzODNfMTA0****

<DeleteResult>
<Deleted>
<Key>example-object-2.jpg</Key>
<VersionId>MTg0NDUxNzc2ODcwMjYyNjIwMTM</VersionId>
</Deleted>
</DeleteResult>

案例五:删除指定删除标记

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Wed, 21 Aug 2019 12:04:04 GMT
Content-Type: application/xml
Content-Length: 154
Content-MD5: EKphCPpHcKiVqJtMqE+DmA==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566389044;1566396244&q-key-time=1566389044;1566396244&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>false</Quiet>
<Object>
<Key>example-object-1.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjU3ODM4NTc</VersionId>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 253
Connection: close
Date: Wed, 21 Aug 2019 12:04:04 GMT
Server: tencent-cos
x-cos-request-id: NWQ1ZDMzMzRfYmIwMmEwOV83YTQzXzEyM2Ri****

<DeleteResult>
<Deleted>
<Key>example-object-1.jpg</Key>
<DeleteMarker>true</DeleteMarker>
<DeleteMarkerVersionId>MTg0NDUxNzc2ODQ2NjU3ODM4NTc</DeleteMarkerVersionId>
<VersionId>MTg0NDUxNzc2ODQ2NjU3ODM4NTc</VersionId>
</Deleted>
</DeleteResult>

案例六:部分删除失败

请求

POST /?delete HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Wed, 21 Aug 2019 12:04:05 GMT
Content-Type: application/xml
Content-Length: 436
Content-MD5: ZAbgvje31aO+0j7pkEkYvQ==
Authorization: q-sign-algorithm=sha1&q-ak=************************************&q-sign-time=1566389045;1566396245&q-key-time=1566389045;1566396245&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=delete&q-signature=****************************************
Connection: close

<Delete>
<Quiet>false</Quiet>
<Object>
<Key>example-object-1.jpg</Key>
</Object>
<Object>
<Key>example-object-2.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjQ1MjM5MTk</VersionId>
</Object>
<Object>
<Key>example-object-3.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjQwMTIwMDI</VersionId>
</Object>
<Object>
<Key>example-object-4.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjQ0NjI0MDQ</VersionId>
</Object>
</Delete>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 703
Connection: close
Date: Wed, 21 Aug 2019 12:04:06 GMT
Server: tencent-cos
x-cos-request-id: NWQ1ZDMzMzVfOTNjMjJhMDlfMzhiM18xMWY3****

<DeleteResult>
<Deleted>
<Key>example-object-1.jpg</Key>
<DeleteMarker>true</DeleteMarker>
<DeleteMarkerVersionId>MTg0NDUxNzc2ODQ2NjM1NTI2NDY</DeleteMarkerVersionId>
</Deleted>
<Deleted>
<Key>example-object-2.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjQ1MjM5MTk</VersionId>
</Deleted>
<Deleted>
<Key>example-object-3.jpg</Key>
<DeleteMarker>true</DeleteMarker>
<DeleteMarkerVersionId>MTg0NDUxNzc2ODQ2NjQwMTIwMDI</DeleteMarkerVersionId>
<VersionId>MTg0NDUxNzc2ODQ2NjQwMTIwMDI</VersionId>
</Deleted>
<Error>
<Key>example-object-4.jpg</Key>
<VersionId>MTg0NDUxNzc2ODQ2NjQ0NjI0MDQ</VersionId>
<Code>PathConflict</Code>
<Message>Path conflict.</Message>
</Error>
</DeleteResult>


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈