2011-11-14 36 views
0

これは私が思いついたものですが、より良い方法があると感じています。私はopen-uriを使用すべきではないとも聞いてきました。HTTP GETリクエストからの応答を取得する方法

require 'open-uri' 

min = 1 
max = 1000 

str = open("http://www.random.org/integers/?num=#{min}&min=1&max=#{max}&col=1&base=10&format=plain&rnd=new").read 

puts str.chomp.to_i 
+0

この方法で何が問題になりますか? –

答えて

2

これは、通常の方法のように見えますが、あなたは別のオプションに興味があるなら、このを見てみましょう:

require 'net/http' 

min = 1 
max = 1000 
address = "http://www.random.org/integers/?num=#{min}&min=1&max={#max}&col=1&base=10&format=plain&rnd=new" 

url = URI.parse(address) 
response = Net::HTTP.get_response(url) 
puts response.body # => 932 
1

あなたのコードはOKですが、あなたが尋ねたことから、私が書きたいです少し違います:

require 'open-uri' 

url_template = "http://www.random.org/integers/?num=%{min}&min=1&max=%{max}&col=1&base=10&format=plain&rnd=new" 
random_number = open(url_template % {:min => 1, :max => 1000}).readline.to_i 
#=> 42 
関連する問題