使用适用于 Ruby 的 Amazon SDK 发出 Amazon Web Services 服务请求 - Amazon 适用于 Ruby 的 SDK
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用适用于 Ruby 的 Amazon SDK 发出 Amazon Web Services 服务请求

要以编程方式访问 Amazon Web Services 服务,SDK 对每个 Amazon Web Services 服务使用一个客户端类。例如,如果您的应用程序需要访问 Amazon EC2,则您的应用程序会创建一个 Amazon EC2 客户端对象来与该服务交互。然后,您可以使用服务客户端向该 Amazon Web Services 服务 发出请求。

要向 Amazon Web Services 服务发出请求,您必须先创建和配置服务客户端。对于您的代码使用的每个 Amazon Web Services 服务,它都有自己的 gem 和用于与之交互的专用类型。客户端为服务公开的每个 API 操作公开一种方法。

每个服务客户端都需要一个 Amazon Web Services 区域和一个凭证提供程序。SDK 使用这些值将您的资源请求发送到正确的区域,并使用正确的凭证对请求进行签名。您可以在代码中以编程方式指定这些值,也可以让它们从环境变量中自动加载。

  • 实例化客户端类时,必须提供 Amazon 凭证。有关 SDK 检查身份验证提供程序的顺序,请参阅凭证提供程序链

  • 该 SDK 有一系列地点(或来源),它会检查这些地点(或来源),以便找到配置设置的值。有关更多信息,请参阅 设置的优先级

适用于 Ruby 的 SDK 包括提供 Amazon Web Services 服务接口的客户端类。每个客户端类都支持特定的 Amazon Web Services 服务 并遵循 Aws::<service identifier>::Client 的命名规范。例如,Aws::S3::Client 提供与 Amazon Simple Storage Service 服务交互的接口,而 Aws::SQS::Client 提供与 Amazon Simple Queue Service 服务交互的接口。

所有 Amazon Web Services 服务 的客户端类都是线程安全的。

您可以将配置选项直接传递给客户端和资源构造函数。这些选项的优先级高于环境和 Aws.config 默认值。

# using a credentials object ec2 = Aws::EC2::Client.new(region: 'us-west-2', credentials: credentials)