<feat>缓存客户端
This commit is contained in:
parent
2c4974a25f
commit
b2722abfa9
|
@ -15,16 +15,22 @@ import (
|
|||
"github.com/qit-team/snow-core/log/logger"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"sync"
|
||||
"time"
|
||||
)
|
||||
|
||||
var WxClientGroup = make(map[string]*wechat.ClientV3)
|
||||
var WxClientGroup sync.Map
|
||||
|
||||
func WxClientGroupKey(wxConfig WxPay) string {
|
||||
return fmt.Sprintf("%s%s", wxConfig.AppId, wxConfig.MchId)
|
||||
}
|
||||
|
||||
// InitClient 使用提供的支付请求参数初始化微信客户端
|
||||
func InitClient(wxConfig WxPay) (*wechat.ClientV3, error) {
|
||||
clientCache, ex := WxClientGroup[wxConfig.AppId]
|
||||
key := WxClientGroupKey(wxConfig)
|
||||
clientCache, ex := WxClientGroup.Load(key)
|
||||
if ex {
|
||||
return clientCache, nil
|
||||
return clientCache.(*wechat.ClientV3), nil
|
||||
}
|
||||
// NewClientV3 初始化微信客户端 v3
|
||||
// mchid:商户ID 或者服务商模式的 sp_mchid
|
||||
|
@ -51,7 +57,7 @@ func InitClient(wxConfig WxPay) (*wechat.ClientV3, error) {
|
|||
|
||||
// 打开Debug开关,输出日志,默认是关闭的
|
||||
wxClient.DebugSwitch = gopay.DebugOn
|
||||
WxClientGroup[wxConfig.AppId] = wxClient
|
||||
WxClientGroup.Store(key, wxClient)
|
||||
return wxClient, nil
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue