检查s3存储桶中是否存在文件夹

编程入门 行业动态 更新时间:2024-10-08 12:38:00
本文介绍了检查s3存储桶中是否存在文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

如何使用Ruby on Rails检查s3存储桶中是否存在某些文件夹?

How can I check if some folder exists in my s3 bucket using Ruby on Rails?

我正在使用AWS:S3官方gem初始化全局连接后

I’m using AWS:S3 official gem After initializing the global connection

AWS::S3::Base.establish_connection!(:access_key_id => 'my_key_id', :secret_access_key => ‘my_secret’)

我的存储桶名为: myfirstbucket

其中的文件夹名为: my_folder

在my_folder内的文件名为: my_pic.jpg

With file inside my_folder named: my_pic.jpg

当我尝试检查是否存在 my_pic.jpg 时,效果很好

When I try to check if my_pic.jpg exist it work just fine

s3object.exists? "/my_folder/my_pic.jpg" , "myfirstbucket" => True

如何仅检查文件夹是否存在?

How can I check only if the folder exists?

s3object = AWS::S3::S3Object s3object.exists? "/my_folder/" , "myfirstbucket" => False

推荐答案

使用 Bucket#objects :

bucket.objects({prefix: 'my/folder/'}).limit(1).any?

返回 ObjectSummary 资源的 Collection .没有API请求直到在集合上调用可枚举的方法为止. Client#list_objects 将被多次调用,直到每次 ObjectSummary 已产生.

Returns a Collection of ObjectSummary resources. No API requests are made until you call an enumerable method on the collection. Client#list_objects will be called multiple times until every ObjectSummary has been yielded.

- docs.aws.amazon/sdkforruby/api/Aws/S3/Bucket.html#objects-instance_method

更多推荐

检查s3存储桶中是否存在文件夹

本文发布于:2023-11-24 14:06:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1625524.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:是否存在   文件夹

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!