Lee*_*fin 5 ruby amazon-s3 amazon-web-services aws-sdk
在AWS S3中,我有一个名为 的存储桶'my-bucket',在下面my-bucket我有以下结构:
my-bucket/
customers/
products/
- data1.txt
- data2.txt
Run Code Online (Sandbox Code Playgroud)
使用AWS Ruby SDK,我可以通过ruby代码列出下面的所有项目my-bucket:
require 'aws-sdk'
s3 = Aws::S3::Resource.new(region: 'us-west-2')
bucket = s3.bucket('my-bucket')
# Show only the first 50 items
bucket.objects.limit(50).each do |item|
puts "Name: #{item.key}"
end
Run Code Online (Sandbox Code Playgroud)
这很好,我想知道是否可以让侦听器侦听使用 AWS Ruby SDK 上传到的任何新文件对象my-bucket/customers/products/?如果可以的话,该怎么做呢?
不能直接用代码来完成。但是,您可以做的是在SQS队列上有一个侦听器(您可以使用代码完成)并在其中创建一个事件S3以便在存储桶中完成的每个更改时将消息推送到队列。
如需SQS文档,请点击此处(非常简单)。
要配置事件,您可以点击此详细链接,对于较短的版本,请执行以下操作(SQS首先创建队列):
ARN.现在,您需要做的Ruby就是侦听(使用轮询机制)队列上的新消息。这些消息将JSON在某些模式中具有某种格式,请使用它。
那应该可以解决你的问题。
| 归档时间: |
|
| 查看次数: |
1743 次 |
| 最近记录: |