diff --git a/lib/wx_pay.rb b/lib/wx_pay.rb index 6edef40..4be7774 100644 --- a/lib/wx_pay.rb +++ b/lib/wx_pay.rb @@ -1,11 +1,28 @@ require 'wx_pay/result' require 'wx_pay/sign' require 'wx_pay/service' +require 'openssl' module WxPay @rest_client_options = {} class<< self attr_accessor :appid, :mch_id, :key, :apiclient_cert, :apiclient_key, :extra_rest_client_options + + def set_apiclient_by_pkcs12(str, pass) + pkcs12 = OpenSSL::PKCS12.new(str, pass) + @apiclient_cert = pkcs12.certificate + @apiclient_key = pkcs12.key + + pkcs12 + end + + def apiclient_cert=(cert) + @apiclient_cert = OpenSSL::X509::Certificate.new(cert) + end + + def apiclient_key=(key) + @apiclient_key = OpenSSL::PKey::RSA.new(key) + end end end -- libgit2 0.21.0