Sha256: b023ff1ce6577c2b91aadc889de5b1a2ab63a1f7e31b88a031e53158623ff2a7
Contents?: true
Size: 1.63 KB
Versions: 2
Compression:
Stored size: 1.63 KB
Contents
require "json" require "net/https" require "uri" module Tokenex class Environment def initialize(api_base_url, tokenex_id, api_key, options={}) @api_base_url = api_base_url @tokenex_id = tokenex_id @api_key = api_key end def token_from_ccnum(ccNum) action = "Tokenize" data = { "Data" => ccNum, "TokenScheme" => 3 } return send_request(action, data) end def ccnum_from_token(token) action = "Detokenize" data = { "Token" => token } return send_request(action, data) end private def headers { 'Content-Type' => 'application/json', 'Accept' => 'application/json' } end def build_request_array(data) request_array = { "APIKey" => @api_key, "TokenExID" => @tokenex_id }.merge(data) return request_array end def send_request(action, data) request_body = build_request_array(data).to_json uri = URI.parse("#{@api_base_url}#{action}") http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true request = Net::HTTP::Post.new(uri, initheader = headers) request.body = request_body response = http.request(request) return JSON.parse(response.body) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tokenex-0.1.2 | lib/tokenex/environment.rb |
tokenex-0.1.1 | lib/tokenex/environment.rb |