2012-04-25 16 views

Respuesta

71

Si nos fijamos en el código fuente en https://github.com/lostisland/faraday/blob/master/lib/faraday/request.rb entonces usted verá:

# :timeout  - open/read timeout Integer in seconds 
# :open_timeout - read timeout Integer in seconds 

No muy útil, tal vez? Bueno, si nos fijamos en neto de Faraday :: HTTP adaptador en https://github.com/lostisland/faraday/blob/master/lib/faraday/adapter/net_http.rb, verá:

http.read_timeout = http.open_timeout = req[:timeout] if req[:timeout] 
http.open_timeout = req[:open_timeout]    if req[:open_timeout] 

Así de open_timeout Faraday es equivalente a Net :: de open_timeout HTTP que se documenta como:

Número de segundos de espera para que se abra la conexión. Se puede usar cualquier número, incluidos flotantes por segundos fraccionarios. Si el objeto HTTP no puede abrir una conexión en estos segundos, genera una excepción TimeoutError.

Y tiempo de espera de Faraday es equivalente a Net :: de HTTP read_timeout que se documenta como:

número de segundos de espera para un bloque para ser leído (a través de una lectura (2) llamada). Se puede usar cualquier número, incluidos flotantes por segundos fraccionarios. Si el objeto HTTP no puede leer datos en tantos segundos, genera una excepción TimeoutError.

+1

Awesome answer, thanks :). Sí, también encontré la descripción de Faraday, y sí, no fue muy útil. Pero esto es realmente genial :) –