微信公众号h5调用微信支付

微信公众号h5调用微信支付其实就是 JSAPI支付
目前jsapi支付分v2和v3,现在尽量接v3的api。因为v2前端调用wx.chooseWXPay的时候成功没有回调,导致后续业务逻辑跳转有问题(原因就是可恨的点金计划)点金计划就是支付成功之后跳转到一个官方小票+广告的页面,点金计划开通的门槛稍微有点高,所以建议大家直接接入v3的微信支付。

this.$wx.config({
					debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
					appId: this.$appConfig.appid, // 必填,公众号的唯一标识
					timestamp: data.timeStamp, // 必填,生成签名的时间戳
					nonceStr: data.nonceStr, // 必填,生成签名的随机串
					signature: data.signature, // 必填,签名
					jsApiList: ['getBrandWCPayRequest'] // 必填,需要使用的JS接口列表});
				})
				this.$wx.ready(() => {
					this.$wx.invoke('getBrandWCPayRequest', {
							appId: this.$appConfig.appid, //公众号ID,由商户传入     
							timeStamp: data.timeStamp, //时间戳,自1970年以来的秒数     
							nonceStr: data.nonceStr, //随机串     
							package: data.package,
							signType: data.signType, //微信签名方式:     
							paySign: data.paySign
						},
						function(res) {
							if (res.err_msg == "get_brand_wcpay_request:ok") {
                                // 判断支付成功跳转到支付后续的业务的页面
								uni.navigateTo({
									url: `/pages/xxxx/xxxx`
								})
							}
						});
				})

代码中的appIdtimeStampnonceStrpackagesignTypepaySign参数均由后端返回。
其实前端调用支付特别简单,调一下方法就可以了。

posted @   明月南楼  阅读(717)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示