微信公众号第三方h5页面支付(vue)

本文使用到的是微信提供的chooseWXPay jsApi接口,在chooseWXPay通过config验证后,代码如下:

import wx from "weixin-js-sdk"

recharge(){  //点击触发的微信接口可不放在 ready 中
            let self=this;
            api.getPayInfo({  //此处接口由后台提供,返回chooseWXPay所需的参数,前端这块比较方便
                body:"充值",
                userId:this.userId,
                feeType:this.feeType,
            }).then(res=>{
                if(res.result===0){
  //需要注意的是以下参数都是必传,微信文档上写的有点乱,示例里没有appId,文字备注却有,没发现的就中坑了
                    wx.chooseWXPay({
                        appId:res.data.form.appId, 
                        timestamp: res.data.form.timeStamp,
                        nonceStr: res.data.form.nonceStr,
                        package: res.data.form.package,
                        signType: res.data.form.signType,
                        paySign: res.data.form.paySign,
                        success: function () {
                            Toast("支付成功!");
                            self.$router.go(-1);
                        },
                        cancel: function () {
                            Toast('已取消支付');
                            self.$router.go(-1);
                        },
                        fail: function () {
                            Toast('支付失败,请重试');
                            self.$router.go(-1);
                        }
                    });
                }else {
                    Toast("获取支付信息失败,请重试");
                }
            });
        }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。