加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 简单获取的法拉第超时

发布时间:2020-12-17 03:29:27 所属栏目:百科 来源:网络整理
导读:有没有办法在这个简单的get方法中添加超时选项? 我正在使用法拉第3.3. Faraday.get(url) 搜索后,我只能在首先启动连接后应用超时选项,然后应用超时选项.还是有一个简单的方法? 这就是我现在正在做的事情: conn = Faraday.newresponse = conn.get do |req|
有没有办法在这个简单的get方法中添加超时选项?

我正在使用法拉第3.3.

Faraday.get(url)

搜索后,我只能在首先启动连接后应用超时选项,然后应用超时选项.还是有一个简单的方法?

这就是我现在正在做的事情:

conn = Faraday.new
response = conn.get do |req|
  req.url url
  req.options.timeout = 2 # 2 seconds
end

解决方法

试试这个:

conn = Faraday.new do |conn|
  conn.request.options.timeout = 20
end
response = conn.get(url)

UPD:
在我查看了宝石资源后,我发现没有办法像你想要的那样.

使用get方法,您只能设置url,request params and headers.但是要指定超时,您必须访问Faraday :: Connection实例的@options.您可以使用attr_reader:options来完成此操作

conn = Faraday::Connection.new
conn.options.timeout = 20

或者在Faraday的initialization ::连接实例:

Faraday::Connection.new(nil,request: { timeout: 20 })

或者当它在copies connection parameters请求参数和yields request back时:

Faraday::Connection.new.get(url) { |request| request.options.timeout = 20 }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读