收藏
回答

公众号接入微信支付,能够成功唤起输入支付控件,确认密码后一直处于 微信支付状态。最后提示系统繁忙

后端进行签名后返回前端

appId, nonceStr, packageString, paySign, signType, timeStamp

用户点击商品时,前端使用 WeixinJsBridge.invoke('getBrandWCPayRequest')进行支付操作。可以唤起支付控件,输入密码后一直处于支付状态,最后提示系统繁忙,请稍后再试. 不知是何原因。

code:

const { appId, nonceStr, packageString, paySign, signType, timeStamp } = result.data;
WeixinJSBridge.invoke(
  'getBrandWCPayRequest',
  {
    appId,
    nonceStr,
    package: packageString,
    paySign,
    signType,
    timeStamp
  },
  function(res) {
    Dialog.alert({
      title: '提示',
      message: JSON.stringify(res),
      confirmButtonColor: '#4fc08d'
    }).then(() => {
      // on close
    });
    if (res.err_msg === 'get_brand_wcpay_request:ok') {
      Dialog.alert({
        title: '提示',
        message: '充值成功!',
        confirmButtonColor: '#4fc08d'
      }).then(() => {
        // on close
      });
      _this.lock = false;
      // 使用以上方式判断前端返回,微信团队郑重提示:
      // res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
    } else {
      _this.lock = false;
      Dialog.alert({
        title: '提示',
        message: '支付失败,请稍后重试!'
      }).then(() => {
        // on close
      });
    }
  }
);
最后一次编辑于  2020-12-01
回答关注问题邀请回答
收藏

2 个回答

  • 支付社区运营
    支付社区运营
    2020-12-01

    您好,您的问题建议您前往V3文档:https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pages/index.shtml  点击右下角“技术咨询”实时寻求技术帮助。

    2020-12-01
    有用
    回复
  • ᠴᠸ᠋ᠨ ᠰᠢᠤᠢ
    ᠴᠸ᠋ᠨ ᠰᠢᠤᠢ
    2021-01-14

    您好,请问问题解决了吗,我也遇到了同样的问题

    2021-01-14
    有用
    回复 1
    • ᠴᠸ᠋ᠨ ᠰᠢᠤᠢ
      ᠴᠸ᠋ᠨ ᠰᠢᠤᠢ
      2021-01-15
      问题解决了,我是由于传入的金额(total或total_fee)有小数导致, 老版本传xml的字段是total_fee, 新版本用JSON传输数据的是total, 新版如果传入的金额有小数下单的时候不会报错,可以正常调起支付,只是输入完密码后一直在等待支付。
      2021-01-15
      回复
登录 后发表内容
问题标签