Estoy usando savon para hacer algunas llamadas a la API, pero tarda mucho tiempo en responder porque estoy recibiendo errores de tiempo de espera. Así que hay alguna manera de cambiar el valor predeterminado de tiempo de espera. Estoy usando savon 0.7.9 ruby 1.8.7 y rails -v 2.3.2.cómo configurar el valor de tiempo de espera predeterminado de savon
9
A
Respuesta
22
Savon usa la gema HTTPI como interfaz para la capa de transporte. Por lo tanto, debe cambiar el tiempo de espera para las llamadas http.
aquí un ejemplo (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: la sintaxis ha cambiado para 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
1
En Savon 3, la operación es como sigue:
client = Savon.new(wsdl_url)
client.http.send_timeout = 300
client.http.receive_timeout = 300
En Savon 3, no puede pasarlas como opciones al constructor, pero se puede suministrar un adaptador personalizado http (para reemplazar el valor por defecto Savon :: HTTPClient) de la siguiente manera:
client = Savon.new(wsdl_url, MyAdapter.new)
+1
A Savon realmente le gusta cambiar cómo hacen las cosas ... Gracias por la actualización. –
Cuestiones relacionadas
- 1. RestTemplate: valor de tiempo de espera predeterminado
- 2. PHP: Valor de tiempo de espera de cURL predeterminado
- 3. JQuery ajax call valor de tiempo de espera predeterminado
- 4. Cómo configurar IHttpAsyncHandler un tiempo de espera?
- 5. Cómo configurar el tiempo de espera para get_meta_tags() & get_headers()
- 6. Hibernar: ¿establecer tiempo de espera de consulta predeterminado?
- 7. Búsqueda DNS de Node.js: cómo configurar el tiempo de espera?
- 8. Cómo configurar el tiempo de espera de keepalive en Android?
- 9. ¿Cómo configurar el tiempo de espera utilizando el dispositivo?
- 10. Cómo configurar el tiempo de espera en Spring WebServiceTemplate
- 11. Cómo configurar el tiempo de espera para dataWithContentsOfURL: url
- 12. openssl ssl_connect blocks forever - cómo configurar el tiempo de espera?
- 13. Tiempo de espera predeterminado para HttpComponent Client
- 14. ¿Cuál es el valor de tiempo de espera predeterminado de java.net.Socket en Android?
- 15. ¿Cuál es el valor de tiempo de espera predeterminado ajax de jQuery?
- 16. ¿Cuál es el valor de tiempo de espera de sesión predeterminado en ASP.NET?
- 17. Selenium WebDriver - Cómo configurar el tiempo de espera de carga de página usando C#
- 18. configurar el tiempo de espera para la entrada del usuario
- 19. cómo configurar el tiempo de espera de conexión/solicitud para el servidor de embarcadero?
- 20. cómo configurar un tiempo de espera para un método
- 21. manejador de tiempo de espera predeterminado para el script de espera
- 22. Agregar el valor predeterminado para el campo de tiempo (7)
- 23. ¿Se puede cambiar el tiempo de espera de bloqueo de objetos predeterminado de Oracle?
- 24. cómo configurar el juego de caracteres predeterminado?
- 25. HttpWebRequest Tiempo de espera
- 26. lua toma http tiempo de espera
- 27. Cómo configurar el repositorio predeterminado
- 28. ¿Cómo configurar el tiempo de espera de sesión más de 20 minutos?
- 29. cómo configurar el tiempo de espera de la consulta desde la cadena de conexión SQL
- 30. Cómo configurar el tiempo de espera para la conexión de la base de datos en django
Si pones 'http.read_timeout = 300' dentro del bloque no va a funcionar. – pisaruk
Esos son segundos por cierto. –