wx
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
|||||||
"crypto/md5"
|
"crypto/md5"
|
||||||
"crypto/sha256"
|
"crypto/sha256"
|
||||||
"crypto/tls"
|
"crypto/tls"
|
||||||
|
"crypto/x509"
|
||||||
"encoding/xml"
|
"encoding/xml"
|
||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
@@ -396,7 +397,7 @@ func New(appID, appKey, mchID string, config ...*platformapi.APIConfig) *API {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewWithCertificate(appID, appKey, mchID string, certPEMBlock, keyPEMBlock interface{}, config ...*platformapi.APIConfig) (a *API) {
|
func NewWithCertificate(appID, appKey, mchID string, certPEMBlock, keyPEMBlock, rootCa interface{}, config ...*platformapi.APIConfig) (a *API) {
|
||||||
var certs tls.Certificate
|
var certs tls.Certificate
|
||||||
var err error
|
var err error
|
||||||
if binCertPEMBlock, ok := certPEMBlock.([]byte); ok {
|
if binCertPEMBlock, ok := certPEMBlock.([]byte); ok {
|
||||||
@@ -405,9 +406,12 @@ func NewWithCertificate(appID, appKey, mchID string, certPEMBlock, keyPEMBlock i
|
|||||||
certs, err = tls.LoadX509KeyPair(certPEMBlock.(string), keyPEMBlock.(string))
|
certs, err = tls.LoadX509KeyPair(certPEMBlock.(string), keyPEMBlock.(string))
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
pool := x509.NewCertPool()
|
||||||
|
pool.AppendCertsFromPEM(rootCa.([]byte))
|
||||||
a = New(appID, appKey, mchID, config...)
|
a = New(appID, appKey, mchID, config...)
|
||||||
a.client.Transport = &http.Transport{
|
a.client.Transport = &http.Transport{
|
||||||
TLSClientConfig: &tls.Config{
|
TLSClientConfig: &tls.Config{
|
||||||
|
RootCAs: pool,
|
||||||
Certificates: []tls.Certificate{certs},
|
Certificates: []tls.Certificate{certs},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ func init() {
|
|||||||
baseapi.Init(sugarLogger)
|
baseapi.Init(sugarLogger)
|
||||||
certPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_cert.pem")
|
certPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_cert.pem")
|
||||||
keyPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_key.pem")
|
keyPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_key.pem")
|
||||||
api = NewWithCertificate("wx4b5930c13f8b1170", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1390686702", certPEMBlock, keyPEMBlock)
|
api = NewWithCertificate("wx70d0943e61e0d15c", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1603491062", certPEMBlock, keyPEMBlock, nil)
|
||||||
// api = New("wx4b5930c13f8b1170", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1390686702")
|
// api = New("wx4b5930c13f8b1170", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1390686702")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -131,11 +131,11 @@ func TestTransfers(t *testing.T) {
|
|||||||
orderNo := utils.GetUUID()
|
orderNo := utils.GetUUID()
|
||||||
result, err := api.Transfers(&TransfersParam{
|
result, err := api.Transfers(&TransfersParam{
|
||||||
PartnerTradeNo: orderNo,
|
PartnerTradeNo: orderNo,
|
||||||
OpenID: "ojWb10M_8kV8NT0aZJa6A5umG1c8",
|
OpenID: "o2dL05DjZggIr2nStjgHWa9oqQBc",
|
||||||
CheckName: "NO_CHECK",
|
CheckName: "NO_CHECK",
|
||||||
Amount: 100,
|
Amount: 1,
|
||||||
Desc: "测试",
|
Desc: "测试",
|
||||||
SpbillCreateIP: "114.114.114.114",
|
SpbillCreateIP: "171.217.98.243",
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
|
|||||||
Reference in New Issue
Block a user