微信支付宝淘宝 客户端内 h5 js唤起支付

Posted hello word

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信支付宝淘宝 客户端内 h5 js唤起支付相关的知识,希望对你有一定的参考价值。

// 唤起支付宝/微信支付
export default function toPay (res1) {
  let _this = window.vm
  const isWX = /micromessenger/.test(window.navigator.userAgent.toLowerCase())
  const isAliPay = /alipayclient/.test(window.navigator.userAgent.toLowerCase())
  const isTB = /windvane/.test(window.navigator.userAgent.toLowerCase())

  if (isWX) {
    function onBridgeReady () {
      WeixinJSBridge.invoke(
        'getBrandWCPayRequest', {
        "appId": res1.data.appId,     //公众号名称,由商户传入     
        "timeStamp": res1.data.timeStamp + '',   //时间戳,自1970年以来的秒数
        "nonceStr": res1.data.nonceStr, //随机串     
        "package": res1.data.package,
        "signType": res1.data.signType, //微信签名方式
        "paySign": res1.data.paySign    //微信签名 
      },
        function (res) {
          console.log('微信支付回调:', res)
          if (res.err_msg == "get_brand_wcpay_request:ok") {
            // 使用以上方式判断前端返回,微信团队郑重提示:
            //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠
            _this.$router.push('/orderList')
          } else {
            _this.$router.push('/orderList')
          }
        })
    }
    if (typeof WeixinJSBridge == "undefined") {
      if (document.addEventListener) {
        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
      } else if (document.attachEvent) {
        document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
        document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
      }
    } else {
      onBridgeReady();
    }
  }

  if (isAliPay || isTB) {
    console.log('唤起支付宝支付')
    const div = document.createElement('divform');
    div.innerhtml = res1.data;
    document.body.appendChild(div);
    document.forms[0].submit()
  }
}

以上是关于微信支付宝淘宝 客户端内 h5 js唤起支付的主要内容,如果未能解决你的问题,请参考以下文章

uniapp集成支付宝支付无法唤起支付宝客户端

app中使用h5支付

H5自动唤起支付宝添加好友页面方法

支付宝小程序如何跳转到淘宝h5页面

H5唤起支付宝扫一扫

App内H5方式微信、支付宝支付,无法回跳到App问题