如何检查AWS S3bucket中是否存在资源
我有一个AWS S3存储桶,我有多个文件夹。
s3 = AWS::S3.new bucket = s3.buckets['test'] bucket.exists? => true
假设我有一个名为demo/index.html
的资源,我将如何检查此资源中是否存在此资源?
可能是我的问题太简单了,但我无法为此找到合适的答案。 任何帮助表示赞赏。
#exists? ⇒布尔值
如果对象存在于S3中,则返回true。
# new object, does not exist yet obj = bucket.objects["my-text-object"] # no instruction file present begin bucket.objects['my-text-object.instruction'].exists? #=> false rescue # exists? can raise an error `Aws::S3::Errors::Forbidden` end # store the encryption materials in the instruction file # instead of obj#metadata obj.write("MY TEXT", :encryption_key => MY_KEY, :encryption_materials_location => :instruction_file) begin bucket.objects['my-text-object.instruction'].exists? #=> true rescue # exists? can raise an error `Aws::S3::Errors::Forbidden` end
http://docs.aws.amazon.com/AWSRubySDK/latest/AWS/S3/S3Object.html#exists%3F-instance_method