2012-04-25 21 views

Odpowiedz

71

Jeśli spojrzeć na kod źródłowy w https://github.com/lostisland/faraday/blob/master/lib/faraday/request.rb wtedy zobaczysz:

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

Nie bardzo pomocny, może? Cóż, jeśli spojrzeć na Net Faradaya :: HTTP adaptera na https://github.com/lostisland/faraday/blob/master/lib/faraday/adapter/net_http.rb, zobaczysz:

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

Więc Faradaya open_timeout odpowiada Net :: HTTP open_timeout która jest udokumentowana jako:

Liczba sekund oczekiwania na otwarcie połączenia. Można użyć dowolnej liczby, w tym także Floats dla ułamków sekund. Jeśli obiekt HTTP nie może otworzyć połączenia w ciągu tych wielu sekund, powoduje to wyjątek TimeoutError.

I Faradaya Timeout odpowiada Net :: HTTP read_timeout która jest udokumentowana jako:

Liczba sekund oczekiwania na jeden blok do odczytu (za pomocą jednego read (2) połączenie). Można użyć dowolnej liczby, w tym także Floats dla ułamków sekund. Jeśli obiekt HTTP nie może odczytać danych w ciągu tych wielu sekund, wywołuje wyjątek TimeoutError.

+1

Niesamowita odpowiedź, dzięki :). Tak, natknąłem się również na opis Faradaya i tak, to nie było zbyt pomocne. Ale to naprawdę świetne :) –

Powiązane problemy