Sha256: 176ee756f19c95e79cf6c4885f1b9f8b723e7eea7a3c473507988bcd17583d5d
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true require 'net/http' require 'uri' module Sberbank module Acquiring class Request TEST_HOST = '3dsec.sberbank.ru'.freeze PRODUCTION_HOST = 'securepayments.sberbank.ru'.freeze attr_reader :path, :params, :response, :test, :http_request, :host alias test? test alias http http_request def initialize(host: nil, params:, path:, test: false) @host = host || test && TEST_HOST || PRODUCTION_HOST @params = params @path = path @test = test end def build_uri URI::HTTPS.build(host: host, path: path) end def perform uri = build_uri Net::HTTP.start(uri.host, uri.port, use_ssl: true) do |http| @http_request = Net::HTTP::Post.new(uri) @http_request['Content-Type'] = 'application/x-www-form-urlencoded' @http_request.body = URI.encode_www_form(params) @response = Response.new(http_response: http.request(@http_request), request: self) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sberbank-acquiring-1.0.0 | lib/sberbank/acquiring/request.rb |