1. Abra el inicio de sesión de WeChat para obtener el código de código https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxxxxx&redirect_uri=callback dirección de la página del cliente y response_type = code & scope = snsapi_base & state = STATE # wechat_redirect
Nota 1. La URL de devolución de llamada de la página del cliente debe usar encodeURI (http: // xxxxxxxx)
2. Si es el modo hash de vue, realice el paso 1 y no se podrá abrir el inicio de sesión porque aparecen dos # en la url
2. Obtenga el valor del código a cambio de OpenC de WeChat
3. Iniciar el proceso de pago comercial
payOrder () { let payDto = { 'amount': this .amount, 'payInfo': this .notice, 'name': this .name, 'idCardNum': this .idCardNum, 'mobile': this .mobile } wxpayH5Create ( payDto) .then (result => { var resu = result.data.result this .onBridgeReady (resu) }) },
onBridgeReady (resu) { WeixinJSBridge.invoke ( 'getBrandWCPayRequest' , { 'appId' : resu.appid, 'timeStamp' : resu.timeStamp, 'nonceStr' : resu.nonceStr, 'package' : resu.package, 'signType' : resu.signType, 'paySign' : resu.paySign }, (res) => { if (res.err_msg.indexOf ('ok')! == -1 ) { this. $ router.push ({ ruta: 'reportIndex ' , consulta: { nombre: este.nombre, idCardNum: this.idCardNum, móvil: this.mobile } }) } }) }
Nota: WeixinJSBridge se proporciona dentro del navegador WeChat, otros navegadores no pueden usar esta función para llamar al pago