收藏
回答

【JSAPI调起支付】支付验证签名失败?get_brand_wcpay_request:cance

如题

微信支付V3,JSAPI调起支付 WeixinJSBridge.invoke 方法 getBrandWCPayRequest

调起后,提示【支付验证签名失败

报错内容是【get_brand_wcpay_request:cancel


参考文档:

https://pay.weixin.qq.com/doc/v3/merchant/4012791857


关于签名部分:

文档:https://pay.weixin.qq.com/doc/v3/merchant/4012365339

用文档中给出的测试数据,计算结果是一致的,表示签章算法没问题


报错截图:


部分代码:

function onBridgeReady() {
  let d;
  d = {
    "appId": $("#appid").val(),
    "timeStamp": $("#timestamp").val(),
    "nonceStr": $("#noncestr").val(),
    "package": $("#package").val(),
    "signType": "RSA",
    "paySign": $("#bri_paySign").val()
  };
  alert(JSON.stringify(d));
  WeixinJSBridge.invoke('getBrandWCPayRequest', d, function(res) {
    alert(JSON.stringify(res));
    if (res.err_msg == "get_brand_wcpay_request:ok") {
      // 使用以上方式判断前端返回,微信团队郑重提示:
      //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠,商户需进一步调用后端查单确认支付结果。
    } else if (res.err_msg == "get_brand_wcpay_request:cancel") {
      // alert('用户取消支付');
      alert(res.err_msg);
    } else if (res.err_msg == "get_brand_wcpay_request:fail") {
      // alert('网络异常,请重新尝试');
      alert(res.err_msg);
    } else {
      alert(res.err_msg)
    }
  });
}
回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容