marvelapi

ref: master

lib/http/client.rb


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
require 'uri'
require 'net/http'

module HTTP
  class Client
    def self.get(url, params = nil)
      uri = URI(url)
      uri.query = encode_params(params)
      res = Net::HTTP.get_response(uri)

      parsed_body = nil

      if res.is_a?(Net::HTTPSuccess)
        begin
          parsed_body = JSON.parse(res.body)
        rescue
        end
      else
        puts "There was an error when fetching data"
      end

      parsed_body
    end

    def self.encode_params(params)
      URI.encode_www_form(params)
    end
  end
end