class Idnow::HttpClient
Public Class Methods
new(host:, read_timout_sec: 30)
click to toggle source
# File lib/idnow/http_client.rb, line 5 def initialize(host:, read_timout_sec: 30) @uri = URI.parse(host) @read_timeout = read_timout_sec end
Public Instance Methods
execute(request, headers = {})
click to toggle source
# File lib/idnow/http_client.rb, line 10 def execute(request, headers = {}) headers.each do |k, v| request[k] = v end client.request(request) rescue Timeout::Error, Errno::EINVAL, Errno::ECONNRESET, EOFError, Net::HTTPBadResponse, Net::HTTPHeaderSyntaxError, Net::ProtocolError => e raise Idnow::ConnectionException, e end
Private Instance Methods
client()
click to toggle source
# File lib/idnow/http_client.rb, line 23 def client Net::HTTP.new(@uri.host, @uri.port).tap do |http| http.read_timeout = @read_timeout http.use_ssl = @uri.scheme == 'https' end end