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

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

有关使用的快速入门指南Amazon适用于 Ruby 的 开发工具包

此部分将向您介绍如何使用Amazon适 SDK for Ruby,创建列出您的 Amazon S3 存储桶的简单 Ruby 应用程序。

编写代码

以下示例列出了最多 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 才能使用捆绑证书。