Net:http
可以阻止我的申请多长时间?
url = "http://feeds.streams.xenim.de/live/binaergewitter/json/"
respons = Net::HTTP.get_response(URI.parse(url))
我发现我可以设置:
http.open_timeout
(等待连接打开的秒数。)default:nil
http.read_timeout
(等待一个块被读取的秒数(通过一次read(2)调用)。)默认值:60秒
这是否真的意味着它会永远等待并尝试阅读60秒?
如果我想要在5秒后达到超时,我应该更好地使用:
open('http://stackoverflow.com', 'r', :read_timeout=>5).read
答案 0 :(得分:0)
read_timeout
60
意味着您将等待最多。在服务器超时之前响应60秒。
要指定超时5秒,请执行:
conn = Net::HTTP.new('feeds.streams.xenim.de')
conn.read_timeout = 5
conn.get '/live/binaergewitter/json/'
open_timeout
指定等待连接打开的秒数(即TCP握手)。