2025-10-21 01:57:42删除对象
对象存储文档中心入门中心API 中心SDK 中心文档活动我的反馈文档反馈官招募中,报名立赚积分兑换代金券!> HOT文档中心>对象存储>SDK 文档>JavaScript SDK>对象操作>删除对象删除对象最近更新时间:2024-08-14 14:20:21
微信扫一扫QQ新浪微博复制链接链接复制成功我的收藏本页目录:简介注意事项前期准备使用案例删除单个对象删除多个对象按前缀删除多个对象(删除指定目录a下的文件)API 操作简介本文介绍对象存储 COS 通过 JavaScript SDK 实现删除对象功能的示例代码和描述。注意事项若您使用删除单个对象接口,需要具有目标对象的删除权限:在您进行 授权策略 时,action 需要设置为cos:DeleteObject,更多授权请参见 支持CAM的业务接口。若您在匿名访问场景下使用删除多个对象接口,需要具有所有目标对象的删除权限和批删权限:在您进行 授权策略 时,action 需要设置为cos:DeleteObject 和cos:DeleteMultipleObjects,更多授权请参见 支持CAM的业务接口。若您在非匿名访问场景下使用删除多个对象接口,需要具有所有目标对象的删除权限:在您进行 授权策略 时,action 需要设置为cos:DeleteObject,更多授权请参见 支持CAM的业务接口。前期准备开始使用前,确保您已经完成了 跨域配置 并完成了 SDK 初始化。使用案例删除单个对象功能说明DELETE Object 接口请求可以在 COS 的存储桶中将一个对象(Object)删除。该操作需要请求者对存储桶有 WRITE 权限。cos.deleteObject({ Bucket: 'examplebucket-1250000000', // 填入您自己的存储桶,必须字段 Region: 'COS_REGION', // 存储桶所在地域,例如ap-beijing,必须字 Key: '1.jpg', // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必须字段}, function(err, data) { console.log(err || data);});参数说明参数名参数描述类型是否必填Bucket存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String是Region存储桶所在地域,枚举值请参见 地域和访问域名String是Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String是VersionId要删除的对象版本 ID 或 DeleteMarker 版本 IDString否回调函数说明function(err, data) { ... }参数名参数描述类型err请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码Object- statusCode请求返回的 HTTP 状态码,例如200、403、404等Number- headers请求返回的头部信息Objectdata请求成功时返回的对象,如果请求发生错误,则为空Object- statusCode请求返回的 HTTP 状态码,例如200,204,403,404等,如果删除成功或者文件不存在则返回204或200,如果找不到指定的 Bucket,则返回404Number- headers请求返回的头部信息Object- DeleteMarker当使用 versionId 请求参数指定删除标记的版本 ID 时,返回值为 'true',代表删除的版本 ID 对应的是一个删除标记当未使用 versionId 请求参数,且指定对象所在的存储桶启用了版本控制时,返回值为 'true',代表该删除请求创建了一个删除标记作为对象的最新版本String删除多个对象功能说明DELETE Multiple Objects 接口请求实现在指定存储桶中批量删除对象,单次请求最大支持批量删除1000个对象。对于响应结果,COS 提供 Verbose 和 Quiet 两种模式: Verbose 模式将返回每个对象的删除结果,Quiet 模式只返回报错的对象信息。cos.deleteMultipleObject({ Bucket: 'examplebucket-1250000000', // 填入您自己的存储桶,必须字段 Region: 'COS_REGION', // 存储桶所在地域,例如ap-beijing,必须字段 Objects: [ { Key: '1.jpg' }, // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必须字段 { Key: '2.txt' }, // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必须字段 ]}, function(err, data) { console.log(err || data);});参数说明参数名参数描述类型是否必填Bucket存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String是Region存储桶所在地域,枚举值请参见 地域和访问域名String是Quiet布尔值,这个值决定了是否启动 Quiet 模式。值为 true 启动 Quiet 模式,值为 false 则启动 Verbose 模式,默认值为 falseBoolean否Objects要删除的对象列表ObjectArray是- Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String是- VersionId要删除的对象版本 ID 或 DeleteMarker 版本 IDString否回调函数说明function(err, data) { ... }参数名参数描述类型err请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多请参见 错误码Object- statusCode请求返回的 HTTP 状态码,例如200,204,403,404等Number- headers请求返回的头部信息Objectdata请求成功时返回的对象,如果请求发生错误,则为空Object- statusCode请求返回的 HTTP 状态码,例如200,204,403,404等Number- headers请求返回的头部信息Object- Deleted说明本次删除成功的对象信息列表ObjectArray- - Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String- - VersionId如果参数传入了 VersionId,返回也会带上 VersionId,表示刚操作的对象版本或 DeleteMarker 版本String- - DeleteMarker如果开启了版本控制,并且参数没有 VersionId,本次删除不会真正抹去文件内容,只新增一个 DeleteMarker 代表可见的文件已删除,枚举值:true、falseString- - DeleteMarkerVersionId当返回的 DeleteMarker 为 true 时,返回刚新增的 DeleteMarker 的 VersionIdString- Error说明本次删除失败的对象信息列表ObjectArray- - Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String- - Code删除失败的错误码String- - Message删除错误信息String按前缀删除多个对象(删除指定目录a下的文件)功能说明DELETE Multiple Objects 接口请求实现在指定存储桶中批量删除对象,单次请求最大支持批量删除1000个对象。对于响应结果,COS 提供 Verbose 和 Quiet 两种模式: Verbose 模式将返回每个对象的删除结果,Quiet 模式只返回报错的对象信息。const deleteFiles = function (marker) { cos.getBucket({ Bucket: 'examplebucket-1250000000', // 填入您自己的存储桶,必须字段 Region: 'COS_REGION', // 存储桶所在地域,例如ap-beijing,必须字段 Prefix: 'a/', // 指定拉取前缀(目录)a Marker: marker, MaxKeys: 1000, }, function (listError, listResult) { if (listError) return console.log('list error:', listError); const nextMarker = listResult.NextMarker; const objects = listResult.Contents.map(function (item) { return {Key: item.Key} }); cos.deleteMultipleObject({ Bucket: bucket, Region: region, Objects: objects, }, function (delError, deleteResult) { if (delError) { console.log('delete error', delError); console.log('delete stop'); } else { console.log('delete result', deleteResult); if (listResult.IsTruncated === 'true') deleteFiles(nextMarker); else console.log('delete complete'); } }); });}deleteFiles();参数说明参数名参数描述类型是否必填Bucket存储桶的名称,命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String是Region存储桶所在地域,枚举值请参见 地域和访问域名String是Quiet布尔值,这个值决定了是否启动 Quiet 模式。值为 true 启动 Quiet 模式,值为 false 则启动 Verbose 模式,默认值为 falseBoolean否Objects要删除的对象列表ObjectArray是- Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String是- VersionId要删除的对象版本 ID 或 DeleteMarker 版本 IDString否回调函数说明function(err, data) { ... }参数名参数描述类型err请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多请参见 错误码Object- statusCode请求返回的 HTTP 状态码,例如200,204,403,404等Number- headers请求返回的头部信息Objectdata请求成功时返回的对象,如果请求发生错误,则为空Object- statusCode请求返回的 HTTP 状态码,例如200,204,403,404等Number- headers请求返回的头部信息Object- Deleted说明本次删除成功的对象信息列表ObjectArray- - Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String- - VersionId如果参数传入了 VersionId,返回也会带上 VersionId,表示刚操作的对象版本或 DeleteMarker 版本String- - DeleteMarker如果开启了版本控制,并且参数没有 VersionId,本次删除不会真正抹去文件内容,只新增一个 DeleteMarker 代表可见的文件已删除,枚举值:true、falseString- - DeleteMarkerVersionId当返回的 DeleteMarker 为 true 时,返回刚新增的 DeleteMarker 的 VersionIdString- Error说明本次删除失败的对象信息列表ObjectArray- - Key对象键(Object 的名称),对象在存储桶中的唯一标识,详情请参见 对象概述String- - Code删除失败的错误码String- - Message删除错误信息StringAPI 操作关于删除单个对象的 API 接口说明,请参见 DELETE Object 文档。关于删除多个对象的 API 接口说明,请参见 DELETE Multiple Objects 文档。上一篇: 列出对象下一篇: 判断对象是否存在Copyright © 2013-2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有深圳市腾讯计算机系统有限公司ICP备案/许可证号:粤B2-20090059粤公网安备44030502008569号腾讯云计算(北京)有限责任公司京ICP证150476号 | 京ICP备11018762号中国站中文International文档“捉虫”活动检视指定产品文档,发现和反馈有效问题,奖!API专项"捉虫"反馈API文档问题,代金券、周边好礼奖不停!文档建议,你提了吗快来使用腾讯云产品文档,提出有效建议,奖!在线咨询目录返回顶部