微信公众号内部H5支付

点击付款

clickPlay(){
    //判断是否在微信内置浏览器环境
    if (typeof WeixinJSBridge !== "undefined") {
	    this.payEnvironment = "mp"
    } else {
	    this.payEnvironment = 'wap'
    }
    //如果是微信内置浏览器环境
    if(this.payEnvironment = "mp"){
        this.onBridgeReady()
    }
}

调起支付代码  请求后端接口  获取支付需要的参数补全就可以了

onBridgeReady(order) {
				let that = this;
				this.$Api.paySubmit({
					out_trade_no: order.out_trade_no,
					title: order.goods.name,
					amount: order.money, //order.money
					paytype: order.pay_type,
					method: this.payEnvironment,
					returnurl: window.location.protocol + '//' + window.location.host +
						'/index.html#/pages/order/order',
				}).then(res => {
					WeixinJSBridge.invoke('getBrandWCPayRequest', {
							appId: res.data.appId, //公众号ID,由商户传入     
							timeStamp: res.data.timeStamp, //时间戳,自1970年以来的秒数     
							nonceStr: res.data.nonceStr, //随机串     
							package: res.data.package,
							signType: res.data.signType, //微信签名方式:     
							paySign: res.data.paySign, //微信签名 
						},
						function(res) {
							if (res.err_msg === 'get_brand_wcpay_request:ok') {
								// 使用以上方式判断前端返回,微信团队郑重提示:
								//res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
								uni.showToast({
									title:'支付成功'
								})
							} else if (res.err_msg === 'get_brand_wcpay_request:cancel') {
								uni.showToast({
									title:'取消支付'
								})
							} else if (res.err_msg === 'get_brand_wcpay_request:fail') {
								uni.showToast({
									title:'支付失败'
								})
							}
						});
				})
			},

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值