Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to set savon default timeout value

I am using savon to make some api calls but its taking long time to respond because of that i am getting time out errors.so is there any way to change the default value of timeout. I am using savon 0.7.9 ruby 1.8.7 and rails -v 2.3.2.

like image 530
Lohith MV Avatar asked Jun 17 '11 10:06

Lohith MV


1 Answers

Savon uses the gem HTTPI as interface to the transport layer. Therefore you need to change the timeout for the http calls.

here an example (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

EDIT: the syntax has changed for 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
like image 65
Steffen Roller Avatar answered Oct 07 '22 02:10

Steffen Roller