En timeout som anges efter ett anslutningsförsök kan inte förkorta försöket som redan har skett. Bygg först Net::HTTP-instansen, ange dess timeouts och starta den sedan.

http = Net::HTTP.new('example.com', 443,
                     '203.0.113.10', 8080)
http.use_ssl = true
http.open_timeout = 5
http.read_timeout = 10
http.start do |session|
  response = session.get('/')
end

Välj först den avsedda HTTP-slutpunkten; HTTP-proxylistan erbjuder kandidater för tillåtna offentliga förfrågningar. Siffrorna är exempelgränser, inte en rekommendation för varje arbetsbelastning. Upprättandet av anslutningen och efterföljande läsningar har olika väntetider. En lästimeout är inte en övergripande deadline för ett jobb som utför flera förfrågningar eller fortsätter att försöka igen.

Använd timeoutdokumentationen för den Ruby-version du distribuerar, inklusive skriv- och TLS-specifika inställningar där det är relevant. Ett gammalt exempel med Net::HTTP::Proxy kan först bygga en proxykonfigurerad klass; värdena som spelar roll tillhör fortfarande instansen som utför arbetet.

Relaterade artiklar