Amazon Simple Storage Service
开发人员指南 (API Version 2006-03-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

删除数据元版本

您在需要时随时可以删除对象版本。此外,还可为具有明确定义的生命周期的对象定义生命周期配置规则,请求 Amazon S3 使当前对象版本过期,或者永久删除非当前对象版本。当存储桶启用了版本控制或者版本控制功能已暂停时,生命周期配置操作的工作方式如下:

  • Expiration 操作应用于当前对象版本,Amazon S3 通过添加删除标记将当前版本作为非当前版本保留 (而不是删除当前对象版本),然后删除标记将成为当前版本。

  • NoncurrentVersionExpiration 操作适用于非当前对象版本,Amazon S3 会永久删除这些对象版本。无法恢复永久删除的对象。

有关更多信息,请参阅 对象生命周期管理

DELETE 请求具有以下使用案例:

  • 启用版本控制后,简单 DELETE 无法永久删除对象。

    Amazon S3 将在存储桶中插入删除标记,该删除标记将成为对象的当前版本并具有新的 ID。当您尝试对当前版本为删除标记的对象执行 GET 操作时,Amazon S3 将该对象作为已删除对象对待 (即使它尚未被擦除),并返回 404 错误。

    下图显示简单 DELETE 实际上不会删除指定的对象。Amazon S3 插入一个删除标记。

  • 要永久删除受版本控制的对象,您必须使用 DELETE Object versionId

    下图显示删除指定的对象版本将永久删除该对象。

使用控制台

有关说明,请参阅如何查看 S3 对象的版本? (在 Amazon Simple Storage Service 控制台用户指南 中)。

使用 AWS 开发工具包

有关使用适用于 Java、.NET 和 PHP 的 AWS 开发工具包上传对象的示例,请参阅删除对象。在无版本控制和启用版本控制的存储桶中上传对象的示例是相同的,只是对于启用版本控制的存储桶,Amazon S3 会分配版本号。否则,版本号为空。

有关使用其他 AWS 开发工具包的信息,请参阅示例代码和库

使用 REST

删除对象的特定版本的步骤

  • DELETE 中,指定版本 ID。

例 删除特定版本

以下示例显示了如何删除 photo.gif 的 版本 UIORUnfnd89493jJFJ。

Copy
DELETE /photo.gif?versionId=UIORUnfnd89493jJFJ HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:xQE0diMbLRepdf3YB+FIEXAMPLE= Content-Type: text/plain Content-Length: 0

使用 MFA 删除

使用删除标记

删除“删除标记”

使用版本控制