修改位置支付配置

master
杨赟 3 years ago
parent 29aee20b6f
commit ff1764098b

@ -18,23 +18,27 @@ type wxpay struct {
Handler *notify.Handler Handler *notify.Handler
} }
type WxpayConfig struct { type WxpayConfig struct {
MchID string // 商户号 MchID string // 商户号
MchCertificateSerialNumber string // 商户证书序列号 MchAPIv3Key string // 商户APIv3密钥
MchAPIv3Key string // 商户APIv3密钥 PrivateKey string // 私钥
PrivateKey string // 私钥 PrivateCert string // 私钥证书
PrivateCert string // 私钥证书
} }
// InitWxpay @Title 初始化微信支付 // InitWxpay @Title 初始化微信支付
func InitWxpay(config WxpayConfig) error { func InitWxpay(config WxpayConfig) error {
// 加载私钥证书 // 加载私钥
privateKey, err := rsa.ParsePrivateKey(config.PrivateKey, rsa.PKCS8) privateKey, err := rsa.ParsePrivateKey(config.PrivateKey, rsa.PKCS8)
if err != nil { if err != nil {
return errors.New("私钥错误") return errors.New("私钥错误")
} }
// 加载私钥证书
certificate, err := rsa.ParseCertificate(config.PrivateCert)
if err != nil {
return errors.New("证书错误")
}
// 使用商户私钥等初始化 client并使它具有自动定时获取微信支付平台证书的能力 // 使用商户私钥等初始化 client并使它具有自动定时获取微信支付平台证书的能力
opts := []core.ClientOption{ opts := []core.ClientOption{
option.WithWechatPayAutoAuthCipher(config.MchID, config.MchCertificateSerialNumber, privateKey, config.MchAPIv3Key), option.WithWechatPayAutoAuthCipher(config.MchID, certificate.SerialNumber.String(), privateKey, config.MchAPIv3Key),
} }
Wxpay.Client, err = core.NewClient(context.Background(), opts...) Wxpay.Client, err = core.NewClient(context.Background(), opts...)
if err != nil { if err != nil {

Loading…
Cancel
Save