wx.chooseWXPay({ timestamp: 0,//此处timestamp的s必须是小写 nonceStr: '', // 支付签名随机串,不长于 32 位 package: '', // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=***) signType: '', // 签名方式,默认为'SHA1',使用新版支付需传入'MD5' paySign: '', // 支付签名 success: function (res) { // 支付成功后的回调函数 }});
timestamp在作为choseWXPay的参数的时候s必须是小写的,我们自己生成paySign时timestamp中的s要变成大写,否则会出现签名错误。
在百度上看到很多帖子,大部分人都是这里被坑了。
另签名参数及顺序:"appId="+payId+"&nonceStr=" + nonceStr + "&package=prepay_id=" + prepay_id + "&signType=MD5&timeStamp=" + ts+"&key="+key;
jssdk调用微信支付时提示“商户签名错误”
最新推荐文章于 2024-06-06 17:12:30 发布