我编写了一个rake任务,它将json解析为API中的哈希值。
相关代码
uri = URI.parse(url)
JSON.parse(uri.open.read)
当我运行这个rake任务时,有时我得到一个“文件结束”错误,我假设是某种形式的超时或连接因任何原因而关闭。有时,json被解析没有缺陷,有时我得到这个错误。
我想知道是否存在不同/更安全的方法,或者是否有办法继续尝试解析,直到parse_url成功完成。
谢谢!
我正在使用ruby 1.9.2-p320和Rails 3.2.6
答案 0 :(得分:2)
通过在JSON.parse周围抛出一个开始/救援并使用重试
来解决它begin
return JSON.parse(uri.open.read)
rescue Exception => e
puts e.message
puts "retrying.."
retry
end