无法使用 ruby​​ 脚本从 amazon s3 中删除文件 [英] unable to delete file from amazon s3 using ruby script

查看:21
本文介绍了无法使用 ruby​​ 脚本从 amazon s3 中删除文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用 aws-sdk-ruby 删除保存在存储桶中的文件在我的亚马逊 s3 帐户中,但我无法弄清楚为什么我能够使用以下代码从 S3 存储桶中删除所需的文件.

I am using aws-sdk-ruby for deleting a file saved in a bucket in my amazon s3 account, but i can't figure out why i am able to delete the desired file from S3 bucket using the following code.

这是我的代码

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

推荐答案

文档告诉它应该是这样的:

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
  • 的实例
  • the square brackets,
  • that the object's key doesn't include the domain and
  • instead of creating an instance of Aws::S3::Resource create an instance of AWS::S3

这篇关于无法使用 ruby​​ 脚本从 amazon s3 中删除文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆