如何强制删除 S3 存储桶中对象的所有版本,然后最终使用 aws-sdk-go 删除整个存储桶?

MAK*_*MAK 6 amazon-s3 go amazon-web-services aws-sdk-go

我有一个启用了版本控制的 S3 存储桶。存储桶中几乎没有具有版本的文件。我编写了一个示例 golang 程序,它可以执行以下操作:

  • GetBucketVersioning - 可以获取存储桶版本控制状态,即已启用
  • ListObjects - 它能够列出存储桶对象
  • DeleteObjects - 它能够删除存储桶对象(但它只是将“删除标记”添加到每个对象的最新版本中。对象的版本历史仍然未删除)
  • DeleteBucket:此操作失败并显示错误消息:

“BucketNotEmpty:您尝试删除的存储桶不为空。
您必须删除存储桶中的所有版本。”

您能否建议如何强制删除S3 存储桶中所有对象的所有版本,以便我最终可以使用 删除整个存储桶aws-sdk-go

Ore*_*igi 0

使用 golang sdk 这似乎是不可能的。他们没有实现删除版本功能。