如何设置savon默认超时值

Loh*_* MV 9 soap ruby-on-rails savon

我正在使用savon进行一些api调用,但是由于我正在及时出错,需要很长时间才能响应.所以有任何方法可以更改超时的默认值.我使用savon 0.7.9 ruby​​ 1.8.7和rails -v 2.3.2.

Ste*_*ler 23

Savon使用gem HTTPI作为传输层的接口.因此,您需要更改http调用的超时.

这里有一个例子(Savon 1.x)

jira = Savon::Client.new do
    wsdl.document = 'http://jira.my-domain.com/rpc/soap/jirasoapservice-v2?wsdl'
end

jira.http.read_timeout = 300
Run Code Online (Sandbox Code Playgroud)

编辑:Savon 2.x的语法已更改

jira = Savon.client(
    wsdl: 'http://jira.my-domain.com/rpc/soap/jirasoapservice-v2?wsdl',
    open_timeout: 300,
    read_timeout: 300,
    ssl_verify_mode: :none)
p jira.operations
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一句,这些都是秒. (7认同)
  • 如果你在块中放入`http.read_timeout = 300`它将无法工作. (3认同)