在代码中配置适用于 Ruby 的 Amazon SDK 服务客户端 - 适用于 Ruby 的 Amazon SDK
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在代码中配置适用于 Ruby 的 Amazon SDK 服务客户端

当直接在代码中处理配置时,配置范围仅限于使用该代码的应用程序。在该应用程序中,您可选择以下配置方式:对所有服务客户端的全局配置、对某一特定 Amazon Web Services 服务类型所有客户端的配置,或对某个具体服务客户端实例的配置。

Aws.config

要在代码中为所有 Amazon 类提供全局配置,请使用 aws-sdk-core gem 中提供的 Aws.config

Aws.config 支持两种不同用途的语法。全局设置可以应用于所有 Amazon Web Services 服务 或应用于特定服务。有关支持的设置的完整列表,请参阅《适用于 Ruby 的 Amazon SDK API 参考》中的 Client Options

通过 Aws.config 进行全局设置

要通过 Aws.config 进行与服务无关的设置,请使用以下语法:

Aws.config[:<global setting name>] = <value>

这些设置将合并到任何已创建的服务客户端中。

全局设置示例:

Aws.config[:region] = 'us-west-2'

如果您尝试使用不支持全局配置的设置名称,在创建不支持该设置的服务类型实例时将会引发错误。如果发生这种情况,请改用特定于服务的语法。

通过 Aws.config 进行特定于服务的设置

要通过 Aws.config 进行特定于服务的设置,请使用以下语法:

Aws.config[:<service identifier>] = { <global setting name>: <value> }

这些设置会合并到该服务类型的所有已创建的服务客户端中。

仅适用于 Amazon S3 的设置示例:

Aws.config[:s3] = { force_path_style: true }

可以通过查看对应的适用于 Ruby 的 Amazon SDK gem 名称,并使用紧跟在“aws-sdk-”之后的后缀,来识别 <service identifier>。例如:

  • 对于 aws-sdk-s3,服务标识符字符串为“s3”。

  • 对于 aws-sdk-ecs,服务标识符字符串为“ecs”。