Я получаю некоторые данные о погоде из онлайн-документа xml, используя Nokogiri, и я хотел бы установить тайм-аут для корректного восстановления на случай, если источник недоступен...
Мои поиски в Google показывают несколько возможных методов для open-uri и Net::HTTP, но ни один из них не относится к Nokogiri. Мои попытки использовать эти методы терпят неудачу (что неудивительно):
begin
currentloc = ("http://api.wunderground.com/auto/wui/geo/WXCurrentObXML/index.xml?query=" + @destination.weatherloc)
currentloc.read_timeout = 10 #
doc = Nokogiri::XML(open(currentloc))
rescue Timeout::Error
return "Current weather for this location not available: request timed out."
end
возвращает "NoMethodError", и:
begin
currentloc = ("http://api.wunderground.com/auto/wui/geo/WXCurrentObXML/index.xml?query=" + @destination.weatherloc)
doc = Nokogiri::XML(open(currentloc), :read_timeout => 10)
rescue Timeout::Error
return "Current weather for this location not available: request timed out."
end
возвращает "TypeError не может преобразовать Hash в String"
Поддерживает ли Nokogiri такой метод (и если да, то как?), или мне следует искать какое-то другое решение?
Спасибо.