微信H5支付

// 首先 引入sdk
import wx from 'jweixin-module'
// 然后定义一个方法
function getUrlKey(name) {
    return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null
}
toPay() {
	const token = uni.getStorageSync("token");
	if (!code) {
            (async () => {
              var appid = '公众号的唯一标识';
              let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${encodeURIComponent(window.location.href)}&response_type=code&scope=snsapi_userinfo&state=${0}#wechat_redirect`;
              window.location.href = url
              return
            })()
          } else {
            this.$http.get('接口url', {
              params: {
                appId: '公众号的唯一标识',
                code,
              },
            })
            .then((response) => {
              localStorage.setItem('openid', response.data.openid)
              this.$http.post(`创建订单的接口`, {
                // 创建订单的一些参数
              }).then(res => {
                // 创建订单完成 这里唤起支付
                var that = this;
                wx.config({
                  debug: false, 
                  appId: '公众号的唯一标识', // 必填,公众号的唯一标识
                  timestamp: res.data.data.timeStamp, // 必填,生成签名的时间戳
                  nonceStr: res.data.data.nonceStr, // 必填,生成签名的随机串
                  signature: res.data.data.paySign, // 必填,签名
                  jsApiList: ['chooseWXPay'],
                });

                wx.ready(function() {
                  wx.chooseWXPay({
                    timestamp: res.data.data.timeStamp, 
                    nonceStr: res.data.data.nonceStr, // 支付签名随机串,不长于 32 位
                    package: res.data.data.package, 
                    signType: res.data.data.signType, // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'
                    paySign: res.data.data.paySign, // 支付签名
                    success(res) {
                      console.log('success:' + JSON.stringify(res));
                    },
                    fail(res) {
                      console.log('失败res',res)
                    }
                  });
                });
              })
            });
          }
		}

大概就这些 剩下就是配置安全域名之类的 得去公众号的后台配置了

拜了个拜 要是有漏下的 我再补

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值