我正在使用 aws-sdk-ruby用于删除保存在我的亚马逊 s3 帐户的存储桶中的文件,但我无法弄清楚为什么我能够使用以下代码从 S3 存储桶中删除所需的文件。
这是我的代码
require 'aws-sdk-v1'
require 'aws-sdk'
ENV['AWS_ACCESS_KEY_ID'] = "XXXXXXX"
ENV["AWS_SECRET_ACCESS_KEY"] = '/ZZZZZZZZ'
ENV['AWS_REGION'] = 'us-east-1'
s3 = Aws::S3::Resource.new
bucket = s3.bucket('some-bucket')
obj = bucket.object('https://s3.amazonaws.com/some-bucket/38ac8226-fa72-4aee-8c3d-a34a1db77b91/some_image.jpg')
obj.delete
最佳答案
documentation告诉它应该看起来像这样:
s3 = Aws::S3.new
bucket = s3.buckets['some-bucket']
object = bucket.objects['38ac8226-fa72-4aee-8c3d-a34a1db77b91/some_image.jpg']
object.delete
请注意:
- 方括号,
- 对象的键不包括域,并且
- 不是创建
Aws::S3::Resource
的实例,而是创建AWS::S3
的实例>
关于ruby - 无法使用 ruby 脚本从 amazon s3 中删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27421972/