123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #ifndef __PAY_API__
- #define __PAY_API__
- #include "http_client.h"
- #include "json_util.h"
- #include <openssl/rsa.h>
- #include <openssl/pem.h>
- #include <openssl/err.h>
- #include <openssl/md5.h>
- #include "tinyxml2.h"
- #include <time.h>
- using namespace tinyxml2;
- #ifndef XRSA_KEY_BITS
- #define XRSA_KEY_BITS (1024)
- #endif
- typedef map<string, string> StringMap;
- extern const string Alipay_default_charset;
- extern const string Alipay_default_url;
- extern const string Alipay_default_sign_type;
- extern const string Alipay_default_version;
- extern const string Alipay_appid;
- extern const string Alipay_method;
- extern const string Alipay_charset;
- extern const string Alipay_signtype;
- extern const string Alipay_sign;
- extern const string Alipay_timestamp;
- extern const string Alipay_version;
- extern const string Alipay_bizcontenr;
- #pragma once
- class PayApi
- {
- public:
- PayApi(void);
- ~PayApi(void);
-
- public:
-
- string alipay_appid;
-
- string alipay_privatekey;
-
- string alipay_signtype;
-
- string alipay_version;
-
- string alipay_charset;
-
- string alipay_url;
-
- string alipay_PublicKey;
-
- public:
-
- string wxpay_appid;
-
- string wxpay_mchid;
-
- string wxapi_submchid;
-
- string wxpay_privatekey;
- public:
- static string base64Encode(const unsigned char *bytes, int len);
- static bool base64Decode(const string &str, unsigned char *bytes, int &len);
- static string rsaSign(const string &content, const string &key);
- static bool rsaVerify(const string &content, const string &sign, const string &key);
-
- public:
- void alipay_setCommonParam(
- const string &appid,
- const string &privatekey,
- const string &signtype,
- const string &charset,
- const string &version,
- const string &url,
- const string &publickey
- );
- string buildContent(const StringMap &contentPairs);
- string alipay_invoke(const string &method, const JsonMap &contentMap, const StringMap &extendParamMap = StringMap());
- JsonMap alipay_Str2JsonMap(string strJson);
- string alipay_invoke(const string &method, const string &content, const StringMap &extendParamMap = StringMap());
- string analyzeAliResponse(const string &responseStr);
-
- public:
- void wxpay_setCommonParam(const string &appid, const string &mchid, const string &privatekey);
- string wxapi_getSign(StringMap &strMap, string key);
- string wxpay_invoke(const string &method, StringMap &extendParamMap, string key);
- string analyzeWXRespone(const string &respone);
- };
- #endif
|