ArgumentError::Bucket不能为空



我目前正试图整理一个显示S3桶中所有项目的方法,并且由于我已经在脚本中定义了桶地址,因此我认为最好引用该方法,而不是将地址放入我的清单方法中。但是,当我这样做时,我收到错误

ArgumentError: :bucket must not be blank

我觉得我遗漏了一些明显的东西,当然我不必把整个地址附加到我的参数中?以下是相关的(?)代码。

def bucket_name
'textract-console-eu-central-xxxxxxxxx'
end
def s3_resource
@s3_resource ||= ::Aws::S3::Resource.new(client: s3_client)
end

所讨论的代码

def list_bucket_objects(s3_resource, bucket_name:'')
puts s3_resource.bucket(bucket_name).objects(prefix:'', delimiter: '').collect(&:key)
end
end

您在这里重写bucket_name:

def list_bucket_objects(s3_resource, bucket_name:'')
^

去掉第二个参数,就可以了。

最新更新