3

AWS 用の Rails アプリケーションを開発しており、「us-east-1」などのリージョン名のドロップダウン メニューを作成したいと考えています。

誰かがそれらを取得するための gem を既に作成している場合は、それを使用したいと思います。そのような宝石や便利な API を知っている人はいますか?

4

3 に答える 3

5

AWS SDK for Ruby (aws-sdk gem) は、リージョン名の列挙をサポートしています。

require 'aws-sdk'

ec2 = AWS::EC2.new(:access_key_id => '...', :secret_access_key => '...')
ec2.regions.map(&:name)
=> ["eu-west-1", "sa-east-1", "us-east-1", "ap-northeast-1", "us-west-2", "us-west-1", "ap-southeast-1"] 

また、DescribeRegions 呼び出しにクライアント インターフェイスを使用することもできます。

ec2.client.describe_regions
=> { :region_info=>[
    {:region_name=>"eu-west-1", :region_endpoint=>"ec2.eu-west-1.amazonaws.com"}, 
    {:region_name=>"sa-east-1", :region_endpoint=>"ec2.sa-east-1.amazonaws.com"}, 
    {:region_name=>"us-east-1", :region_endpoint=>"ec2.us-east-1.amazonaws.com"}, 
    {:region_name=>"ap-northeast-1", :region_endpoint=>"ec2.ap-northeast-1.amazonaws.com"}, 
    {:region_name=>"us-west-2", :region_endpoint=>"ec2.us-west-2.amazonaws.com"}, 
    {:region_name=>"us-west-1", :region_endpoint=>"ec2.us-west-1.amazonaws.com"}, 
    {:region_name=>"ap-southeast-1", :region_endpoint=>"ec2.ap-southeast-1.amazonaws.com"}
  ], 
  :request_id=>"04458cac-bdf2-4847-bf1f-c7ea65813777"
} 

ここで宝石のドキュメントを表示できます: http://docs.amazonwebservices.com/AWSRubySDK/latest/frames.html

于 2012-07-26T06:37:39.430 に答える
1

私ができること:

>> `ec2-describe-regions`.scan(/REGION\s+(\S+)/).flatten
=> ["eu-west-1", "sa-east-1", "us-east-1", "ap-northeast-1", "us-west-2", "us-west-1", "ap-southeast-1"]
于 2012-07-26T04:58:21.197 に答える
1

ジェムを見つけた!

http://rubydoc.info/gems/aws/2.5.6/Aws/Ec2:describe_regions

于 2012-07-26T05:45:43.127 に答える