Как перечислить все файлы в папке S3 с помощью Fog in Ruby
Как мне перечислить все файлы в конкретном S3-каталоге с помощью Fog?
Я знаю, что S3 не хранит файлы в папках, но мне нужен способ ограничить возвращаемые файлы определенной папкой вместо того, чтобы извлекать весь список в ведре.
Ответ 1
Используйте параметр prefix в методе directory.get. Пример:
def get_files(path, options)
connection = Fog::Storage.new(
provider: 'AWS',
aws_access_key_id: options[:key],
aws_secret_access_key: options[:secret]
)
connection.directories.get(options[:bucket], prefix: path).files.map do |file|
file.key
end
end