如何使用 Spring Cloud AWS 从 S3 中删除文件?
Posted
技术标签:
【中文标题】如何使用 Spring Cloud AWS 从 S3 中删除文件?【英文标题】:How to delete file from S3 using Spring cloud AWS? 【发布时间】:2018-12-20 14:13:10 【问题描述】:我在 Spring AWS Cloud 中找不到任何 API 或文档来从 S3 存储桶中删除对象。有人可以告诉我怎么做吗?
documentation 只是谈论使用ResourceLoader
阅读内容。
我现在看到的唯一选择是显式注入AmazonS3
并调用deleteObject
。
【问题讨论】:
【参考方案1】:Spring 的资源 API 不支持操作的完整生命周期。两个主要接口是Resource
和WritableResource
。没有用于删除的 API。
作为替代方案,您可以使用Spring Content 代替S3。 Spring Content Stores 都是通用的ResourceLoader
s,返回支持删除的Resource
s。顺便说一句,这完全符合您的建议。
查看参考指南。基本的 Store
接口应该是 Spring Cloud AWS 的直接插入接口。
只需将返回从getResource
转换为DeletableResource
并调用它为delete
以删除S3 中的对象。
如果不清楚,请告诉我,我可以更新更多细节。
【讨论】:
以上是关于如何使用 Spring Cloud AWS 从 S3 中删除文件?的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot、Spring Cloud AWS 和 AWS SQS 未从队列中读取
Spring Boot 无法从 Spring Cloud AWS Core 依赖项启动
从 Spring Cloud Function 访问 AWS Lambda 上下文
如何集成 AWS + ELB + AutoScale + Docker + Spring Cloud