Class: TapPay::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/tappay/request.rb

Class Method Summary collapse

Class Method Details

.post(url, params = {}, &block) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/tappay/request.rb', line 6

def self.post(url, params = {}, &block)
  payload = default_params.merge(params).to_json
  uri     = URI(url)
  req     = Net::HTTP::Post.new(uri)

  req['Content-Type'] = 'application/json'
  req['x-api-key'] = params[:partner_key] || TapPay.partner_key
  req.body = payload

  res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http|
    http.request(req)
  }
  res_json = JSON.parse(res.body)

  block_given? ? yield(res_json) : res_json
end