Method: Micropayment::API#get

Defined in:
lib/services/api.rb

#get(uri) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/services/api.rb', line 25

def get(uri)
  use_ssl = uri.scheme == 'https'
  http = Net::HTTP.new(uri.host, use_ssl ? 443 : 80)
  http.use_ssl = use_ssl
  #http.read_timeout = timeout
  if use_ssl
    if File.directory? RootCA
      http.ca_path = RootCA
      http.verify_mode = OpenSSL::SSL::VERIFY_PEER
      http.verify_depth = 5
    else
      http.verify_mode = OpenSSL::SSL::VERIFY_NONE
    end
  end
  response = http.get uri.request_uri, 'User-agent' => 'Micropayment Ruby Client'
  case response
  when Net::HTTPSuccess, Net::HTTPOK
    response.body
  else
    response.error!
  end
end