Class: Payture::API
- Inherits:
-
Object
- Object
- Payture::API
- Defined in:
- lib/payture/api.rb
Direct Known Subclasses
Instance Method Summary collapse
- #host ⇒ Object
-
#initialize(host) ⇒ API
constructor
A new instance of API.
- #request(path, merchant, params) ⇒ Object
Constructor Details
#initialize(host) ⇒ API
Returns a new instance of API.
8 9 10 11 |
# File 'lib/payture/api.rb', line 8 def initialize(host) raise ArgumentError, "host is required" if not host @host = host end |
Instance Method Details
#host ⇒ Object
13 14 15 |
# File 'lib/payture/api.rb', line 13 def host @host end |
#request(path, merchant, params) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/payture/api.rb', line 17 def request(path, merchant, params) data = { VWID: merchant, DATA: params.url_encode } # puts "request.data: #{data}" uri = URI::HTTPS.build({ host: @host, path: path }) puts "URI: #{uri}" http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true req = Net::HTTP::Post.new(uri.request_uri) req.body = data.to_query # puts "request: #{req}" res = http.request(req) # OpenStruct.new(Hash.from_xml(res.body).downcase_key) Hash.from_xml(res.body) end |