Is there a way to configure an Amazon S3 bucket, or the AWS SDK on iOS, so that all uploads to a bucket are atomic?
That is, I want to configure the bucket or the SDK so that if an upload does not complete successfully, it does not leave the partially uploaded file or any other new object in the bucket.
答案 0 :(得分:3)
就像在评论中所说的那样,如果你不使用分段上传,你应该开箱即用。
如果您使用分段上传,则需要考虑两件事:
您可以创建一个存储桶生命周期策略来清除不完整的上传( AbortIncompleteMultipartUpload 策略),详见lifecycle guidelines:
Amazon S3支持您可以用来指导的存储桶生命周期规则 Amazon S3用于中止未完成的多部分上传 启动后的指定天数。当一个多部分 上传未在时间范围内完成,因此符合条件 中止操作,Amazon S3中止分段上传(和 删除与分段上传相关联的部分。
您可以将规则仅附加到某些前缀或整个存储桶,这听起来更适合您的用例。您可以在S3 lifecycle rules docs中找到有关铲斗生命周期的更多详细信息。