有关使用的快速入门指南AmazonSDK for Ruby - 适用于 Ruby 的 Amazon 开发工具包
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

有关使用的快速入门指南AmazonSDK for Ruby

本节介绍如何使用Amazon开发工具包适用 SDK for Ruby 的开发工具包,用于创建列出您的 Amazon S3 存储桶的

编写代码

以下示例列出了最多 50 个存储桶的名称。复制代码并将其另存为 buckets.rb。请注意,虽然资源对象是在us-west-2区域中,Amazon S3 将返回您有权访问的存储桶,而不管在什么区域。

require 'aws-sdk-s3' # v2: require 'aws-sdk' s3 = Aws::S3::Resource.new(region: 'us-west-2') s3.buckets.limit(50).each do |b| puts "#{b.name}" end

运行代码

输入以下命令来执行 buckets.rb

ruby buckets.rb

Windows 用户的注意事项

在 Windows 上使用 SSL 证书并运行 Ruby 代码时,您将看到类似如下的错误。

C:\Ruby>ruby buckets.rb C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (Seahorse::Client::NetworkingError) from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `block in connect' from C:/Ruby200-x64/lib/ruby/2.0.0/timeout.rb:66:in `timeout' from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `connect' from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:862:in `do_start' from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:857:in `start' ...

要修复此问题,请将以下行添加到您的 Ruby 源文件中第一个源文件之前的某处。Amazon调用。

Aws.use_bundled_cert!

请注意,如果您在 Ruby 程序中只使用 aws-sdk-s3 Gem,则还需要添加 aws-sdk-core Gem 才能使用捆绑证书。