我使用Nokogiri
来解析XML
。检查页面是否在线的快速方法
问题在于外部资源的响应时间。有时它工作正常。有时回复时间可能会超过30秒。有时会返回不同的错误代码。我需要的是找出最快的方法来知道我的XML是否已准备好被open-uri
请求。只有这样才能做出实际的要求。
我现在正在做的是将超时设置为5秒以防止延迟。
begin
Timeout::timeout(5) do
link = URI.escape("http://domain.org/timetable.xml")
@doc = Nokogiri::HTML(open(link))
end
rescue Timeout::Error
@error = "Data Server is offline"
end
如果服务正在运行,但需要30秒,您是否认为“准备好要求”或未准备好? (也许明确定义你的准备状态。) – 2011-02-23 21:37:08
技术上是的。但是不可能知道我的响应需要多长时间 – fl00r 2011-02-23 21:52:18