【问题标题】:AWS Ruby SDK Pricing gem Aws::Errors::NoSuchEndpointErrorAWS Ruby 开发工具包定价 gem Aws::Errors::NoSuchEndpointError
【发布时间】:2018-05-04 05:58:01
【问题描述】:

我一直在使用此 SDK 中的其他 gems,之前从未见过此问题。我正在尝试创建一个定价客户端并获取一些服务描述,但我遇到了这个异常,我不确定为什么:

require 'aws-sdk-pricing'

c = Aws::Pricing::Client.new(region: 'eu-west-1')
r = c.describe_services({ format_version: "aws_v1", max_results: 1, 
  service_code: "AmazonEC2" })

我得到:

Aws::Errors::NoSuchEndpointError:遇到SocketError while 尝试连接到:

https://api.pricing.eu-west-1.amazonaws.com

这通常是无效的:region 选项或 :endpoint 选项格式错误。

  • 避免直接配置:endpoint 选项。端点由:region 构建。 :endpoint 选项被保留 用于连接到非标准测试端点。

  • 并非每个地区都提供所有服务。

  • 永远不要为可用区的区域名称添加后缀。使用“us-east-1”,而不是“us-east-1a”

已知的 AWS 区域包括(不特定于该服务):

ap-northeast-1 ap-northeast-2 ap-south-1 ap-southeast-1 ap-southeast-2 ca-central-1 eu-central-1 eu-west-1 eu-west-2 sa-east-1 us-east-1 us-east-2 us-west-1 us-west-2 cn-north-1 us-gov-west-1

我已经在其他地区尝试过,并获得了相同的结果。其他 gem 中的相同模式,如 aws-sdk-ec2,允许我毫无问题地实例化客户端。我在这里错过了什么?

提前致谢。

如果重要,请使用 ruby​​ 2.3.3。

【问题讨论】:

    标签: ruby aws-sdk


    【解决方案1】:

    在撰写此问题时,AWS 仅在 2 个端点支持此 API:us-east-1 和 ap-south-1。见:http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/using-pelong.html

    您可以在请求中指定您想要价格的地区。

    【讨论】:

      猜你喜欢
      • 2013-07-19
      • 2019-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-04
      • 2020-03-14
      • 2011-11-10
      相关资源
      最近更新 更多