我在网上搜索了文档和其他地方,似乎无法想出为法拉第设置超时选项的正确方法.有人有答案吗?
我试过了:
conn = FaradayStack.build(url)
conn.headers[:user_agent] = AppConfig.user_agent
# conn.options[:timeout] = 20
# conn.options[:open_timeout] = 20
response = conn.get do |req|
req.options = {
:timeout => 20,
:open_timeout => 20
}
end
response.body
Run Code Online (Sandbox Code Playgroud)
似乎没有什么工作.顺便说一句,我使用Typhoeus适配器,如果这有所作为.
Mic*_*win 14
好吧,我好像想通了.如果我将超时选项传递给初始化程序,它似乎工作:
options = {
:timeout => 20,
:open_timeout => 20
}
conn = FaradayStack.build(url, options)
conn.headers[:user_agent] = AppConfig.user_agent
conn.get.body
Run Code Online (Sandbox Code Playgroud)
Dav*_* J. 10
该法拉第README目前包含使用块风格的这个例子:
conn.get do |req|
req.url '/search'
req.options[:timeout] = 5 # open/read timeout in seconds
req.options[:open_timeout] = 2 # connection open timeout in seconds
end
Run Code Online (Sandbox Code Playgroud)
如果这对您不起作用,也许您应该在Github上提交一张票.
| 归档时间: |
|
| 查看次数: |
9311 次 |
| 最近记录: |