module AlipayGlobal::Service
Public Class Methods
check_optional_params(params, names)
click to toggle source
# File lib/alipay_global/service.rb, line 29 def self.check_optional_params(params, names) return if !AlipayGlobal.debug_mode? warn("AlipayGlobal Warn: must specify either #{names.join(' or ')}") if names.all? {|name| params[name].nil? } end
check_required_params(params, names)
click to toggle source
# File lib/alipay_global/service.rb, line 21 def self.check_required_params(params, names) return if !AlipayGlobal.debug_mode? names.each do |name| warn("AlipayGlobal Warn: missing required option: #{name}") unless params.has_key?(name) end end
gateway_url()
click to toggle source
# File lib/alipay_global/service.rb, line 3 def self.gateway_url AlipayGlobal.environment == "PRODUCTION" ? "https://mapi.alipay.com/gateway.do?" : "https://openapi.alipaydev.com/gateway.do?" end
request_uri(params, sign = true)
click to toggle source
# File lib/alipay_global/service.rb, line 7 def self.request_uri(params, sign = true) uri = URI(gateway_url) processed_params = sign ? sign_params(params) : params uri.query = URI.encode_www_form(AlipayGlobal::Utils.stringify_keys(processed_params)) uri end
sign_params(params)
click to toggle source
# File lib/alipay_global/service.rb, line 14 def self.sign_params(params) params.merge( 'sign_type' => AlipayGlobal.sign_type.upcase, 'sign' => AlipayGlobal::Sign.generate(params) ) end