微信支付返回支付签名验证失败

虎虎0369 虎虎0369 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
微信支付已经能拿到预支付订单了,但是js在调用的时候就一直返回:"get_brand_wcpay_request:fail",
res返回的结果:err_code=2 err_desc="支付签名验证失败",我测试了我的签名和微信提供的签名验证工具结果是一样的
,参数配置也没问题。
搞不懂:求解,


var paySignReqHandler = new RequestHandler(HttpContext);
paySignReqHandler.setParameter("appId", PayConfig.AppId);
paySignReqHandler.setParameter("timeStamp", TimeStamp);
paySignReqHandler.setParameter("nonceStr", NonceStr);
paySignReqHandler.setParameter("package", Package);
paySignReqHandler.setParameter("signType", "MD5");
PaySign = paySignReqHandler.CreateMd5Sign("key", PayConfig.AppKey);

var result = new
{
orderBasic = orderBasic,
WxConfig = new
{
appId = PayConfig.AppId, //公众号名称,由商户传入
timeStamp = TenpayUtil.getTimestamp(), //时间戳
nonceStr = TenpayUtil.getNoncestr(), //随机串
package = Package, //扩展包
paySign = PaySign
}
};

return Success(result);



$.post("/Order/PayOrder?id=@Model.OrderBasic.Id",{},function(data){
if(data.Success)
{
alert(typeof WeixinJSBridge);
WeixinJSBridge.invoke('getBrandWCPayRequest', {
"appId": data.Data.WxConfig.appId, //公众号名称,由商户传入
"timeStamp": data.Data.WxConfig.timeStamp, //时间戳
"nonceStr": data.Data.WxConfig.nonceStr, //随机串
"package": data.Data.WxConfig.package, //扩展包
"signType": "MD5", //微信签名方式:1.sha1
"paySign": data.Data.WxConfig.paySign//微信签名
},
function(res) {

if (res.err_msg == "get_brand_wcpay_request:ok") {
alert("微信支付成功!");
} else if (res.err_msg == "get_brand_wcpay_request:cancel") {
alert("用户取消支付!");
} else {
alert(res.err_msg);
alert("支付失败!");
}
// 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
//因此微信团队建议,当收到ok返回时,向商户后台询问是否收到交易成功的通知,若收到通知,前端展示交易成功的界面;若此时未收到通知,商户后台主动调用查询订单接口,查询订单的当前状态,并反馈给前端展示相应的界面。
});
}
});
...全文
评论 9
收藏 已收藏
分享
返回顶部
虎虎0369
微信开发 3,161 成员 3,828 内容