![](/img/trans.png)
[英]AWS::S3::Errors::AccessDenied: Access Denied when trying to do copy_to
[英]copy_to in s3 using ruby
我正在尝试将图像从存储桶复制到s3中的另一个存储桶。
AWS.config(
:access_key_id => 'Bucket one key',
:secret_access_key => 'bucket one secret key'
)
s3 = AWS::S3.new
bucket1 = s3.buckets["Bucket_one"]
bucket2 = s3.buckets["Bucket_two"]
obj1 = bucket1.objects["source_key"]
obj2 = bucket2.objects["destination_key"]
obj1.copy_to(obj2)
您能指导我如何检索S3中已经上传的文件的源密钥吗? 我有destination_key,bucket_one和bucket_two。
S3上的映像不是单个文件,而是多个文件名,这些文件名始于映像的名称。 因此,您需要知道图像的名称。 一旦获得它,容器应该看起来像:
bucket1 = s3.buckets["Bucket_one"]
bucket2 = s3.buckets["Bucket_two"]
bucket1.objects.with_prefix(image_name).each do |source_object|
source_object.copy_to(bucket2.objects[source_object.key])
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.