欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > 【异常解决】AmazonS3 getAllObjectsByPrefix() 返回数据只有1000条

【异常解决】AmazonS3 getAllObjectsByPrefix() 返回数据只有1000条

2025/9/20 8:26:00 来源:https://blog.csdn.net/weixin_44299027/article/details/143449864  浏览:    关键词:【异常解决】AmazonS3 getAllObjectsByPrefix() 返回数据只有1000条

博主介绍:✌全网粉丝21W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌

技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。

感兴趣的可以先关注收藏起来,在工作中、生活上等遇到相关问题都可以给我留言咨询,希望帮助更多的人。

AmazonS3 getAllObjectsByPrefix方法 返回数据只有1000条

Amazon S3getAllObjectsByPrefix()方法通常用于获取指定前缀的所有对象。但是,默认情况下,当你试图获取大量对象时(例如,数千个),Amazon S3 API可能会限制结果的数量到最多1000个。这是因为S3 API设计为分页结果,默认一次最多返回1000个对象。

要获取所有匹配前缀的对象,你需要进行多次调用,并递归地获取下一页,直到没有更多的对象。以下是使用AWS SDK for Java进行此操作的示例代码:

import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.model.ListObjectsRequest;
import com.amazonaws.services.s3.model.ListObjectsV2Request;
import com.amazonaws.services.s3.model.ListObjectsV2Result;
import com.amazonaws.services.s3.model.S3ObjectSummary;public List<S3ObjectSummary> getAllObjectsByPrefix(AmazonS3 s3Client, String bucketName, String prefix) {ListObjectsV2Request request = new ListObjectsV2Request().withBucketName(bucketName).withPrefix(prefix);List<S3ObjectSummary> objectSummaries = new ArrayList<>();ListObjectsV2Result result;do {result = s3Client.listObjectsV2(request);objectSummaries.addAll(result.getObjectSummaries());request.setContinuationToken(result.getNextContinuationToken());} while (result.isTruncated());return objectSummaries;
}

在这个例子中,我们使用了listObjectsV2()方法,它是listObjects()的增强版本,支持分页,并且没有对结果数量的硬性限制。我们通过循环检查isTruncated()方法的结果,当结果被截断(即还有更多的对象)时,我们获取下一个续集的token并继续查询,直到没有更多的对象为止。这样,我们就可以获取所有匹配前缀的对象。


好了,今天分享到这里。希望你喜欢这次的探索之旅!不要忘记 “点赞” 和 “关注” 哦,我们下次见!🎈

本文完结!

祝各位大佬和小伙伴身体健康,万事如意,发财暴富,扫下方二维码与我一起交流!!!在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词