Hej,
Mam kod, który działa:
url = "https://adres.hosta.xyz:8080/backend.php?action=GetBilling&request={\"from\":\"#{s}\",\"to\":\"# {e}\",\"dl\":\"true\",\"success_calls\":\"true\",\"calltype\":\"outgoing\",\"id_customer\":\"#{@client_id}\"}&SESSID=#{@session_id}"
uri = URI(url)
response = Net::HTTP.get(uri)
json = JSON.parse(response)
Niestety adres.hosta.xyz potrafi odpowiadać masakrycznie długo i czasem dostaję po prostu timeouta.
Idąc za https://ruby-doc.org/stdlib-2.1.1/libdoc/net/http/rdoc/Net/HTTP.html
Doszedłem do:
Net::HTTP.start(uri.host, uri.port) do |http|
request = Net::HTTP::Get.new uri
http.read_timeout = 600
response = http.request request
end
Niestety… to wywala mi błąd:
.rvm/rubies/ruby-2.3.3/lib/ruby/2.3.0/net/http/response.rb:42:in `read_status_line': wrong status line: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">" (Net::HTTPBadResponse)`
No i zdurniałem. Macie jakiś pomysł?