Net::HTTP 在 Ruby 中获取超时

问题描述:

如何在 net/http 中设置更大的超时时间?我正在做的是:

How can I set a larger timeout in net/http? What I'm doing is this:

rta = JSON.parse(Net::HTTP.get(URI(url)))

我试过了:

uri = URI(url)
http = Net::HTTP.new(uri.host, uri.port)
http.open_timeout = 5* 60
http.read_timeout = 5* 60
rta = JSON.parse(Net::HTTP.get(URI(url)))

但是还是不行.

看起来它可能不起作用,因为您正在对类而不是您创建的实例进行 get 调用.尝试将最后一行更改为:

It looks like it probably isn't working because you're making your get call on the Class instead of the instance you created. Try changing that last line to:

rta = JSON.parse(http.get(URI(url)))