2012-04-25 10 views

उत्तर

71

आप https://github.com/lostisland/faraday/blob/master/lib/faraday/request.rb पर स्रोत कोड को देखो, तो आप देखेंगे:

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

नहीं बहुत उपयोगी है, शायद? खैर, अगर आप https://github.com/lostisland/faraday/blob/master/lib/faraday/adapter/net_http.rb पर फैराडे के Net :: HTTP एडाप्टर को देखो, आप देखेंगे:

:

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

तो फैराडे के open_timeout नेट के बराबर है :: HTTP के open_timeout के रूप में दर्ज है जो

कनेक्शन खोलने के लिए प्रतीक्षा करने के लिए सेकंड की संख्या। किसी भी संख्या का उपयोग किया जा सकता है, जिसमें fractional सेकंड के लिए फ़्लोट शामिल हैं। यदि HTTP ऑब्जेक्ट इस कई सेकंड में कनेक्शन नहीं खोल सकता है, तो यह टाइमआउट त्रुटि अपवाद उठाता है।

और फैराडे के टाइमआउट नेट के बराबर है :: HTTP के read_timeout जो के रूप में दर्ज है:

सेकंड की संख्या एक ब्लॉक के लिए (एक पढ़ने के माध्यम से पढ़ने के लिए प्रतीक्षा करने के लिए (2) कहते हैं)। किसी भी संख्या का उपयोग किया जा सकता है, जिसमें fractional सेकंड के लिए फ़्लोट शामिल हैं। यदि HTTP ऑब्जेक्ट इस कई सेकंड में डेटा नहीं पढ़ सकता है, तो यह टाइमआउट त्रुटि अपवाद उठाता है।

+1

बहुत बढ़िया उत्तर, धन्यवाद :)। हाँ, मैं फैराडे के विवरण में भी आया, और हाँ, यह बहुत उपयोगी नहीं था। लेकिन यह वास्तव में महान है :) –

संबंधित मुद्दे