uniapp php 微信app支付

//微信支付
wxPay(){
	uni.getProvider({
		service: 'payment',
		success: res=>{
			if (~res.provider.indexOf('wxpay')) { //先判断用户是否有微信支付环境(是否安装了微信app)
				uni.showLoading({title: '正在调起微信支付'})
				let params={
					money:this.moneyCount,
					bs:4
				}
				uni.request({ //再从后端接口获取相关数据配置到orderInfo里,这个接口由后端配置好了,返回结果见下图2-微信
					url: ``,
					method: 'POST',
					header: {
						"Token":this.userToken,
						"Content-Type":"application/x-www-form-urlencoded"
					},
					data: params,
					success: res => {
						if(res.data.code==200){
							let resobj=JSON.parse(res.data.data)
							let payInfo={
								appid: resobj.appid,
								noncestr: resobj.nonce_str,
								package:"Sign=WXPay",
								partnerid: resobj.mch_id,
								prepayid: resobj.prepay_id,
								timestamp: resobj.time_stamp,
								sign: resobj.sign,
							}
							uni.requestPayment({
								provider: 'wxpay',
								orderInfo: payInfo, //微信订单数据(Object类型)
								success: res=>{
									uni.hideLoading();
	        						uni.showToast({title: '支付成功',icon:'none'})
	        					},
	        					fail:err=>{
									uni.hideLoading();
	        						uni.showToast({title: '支付失败,请稍后再试',icon:'none'})
	        					}
	        				});
						}
					},
					fail: () => {
						uni.hideLoading();
						uni.showToast({title: '服务器开小差了呢,请您稍后再试',icon:'none'})
					}
				});
			}else{
				uni.showToast({title: '获取微信通道失败,请检查您的微信是否正常启用',icon:'none'})
			}
		}
	});
},

  

posted @ 2022-08-24 17:57  小风筝666  阅读(134)  评论(0编辑  收藏  举报