如何使用Spring Cloud AWS从S3删除文件?

时间:2018-07-12 11:07:30

标签: spring spring-boot amazon-s3 spring-cloud spring-cloud-aws

我在Spring AWS Cloud中找不到任何API或文档可以从S3存储桶中删除对象。有人可以让我知道怎么做吗?

documentation只是谈论使用ResourceLoader阅读内容。

我现在看到的唯一选项是显式注入AmazonS3并调用deleteObject

1 个答案:

答案 0 :(得分:2)

Spring的Resource API不支持操作的整个生命周期。两个主要接口是ResourceWritableResource。没有要删除的API。

作为替代方案,您可以将Spring Content替换为S3。 Spring Content Stores是所有通用ResourceLoader,它们返回确实支持删除的Resource。顺便说一句,它完全按照您的建议工作。

请参阅参考指南。基本的Store接口应该是Spring Cloud AWS中的直接接口。

将返回的getResource强制转换为DeletableResource,并称其为delete以删除S3中的对象。

请让我知道是否不清楚,我可以提供更多详细信息。