前端uniapp,小程序实现微信支付
在下小白,只是记录一下自己已完成的项目功能,以便于以后巩固,以及再遇到是使用。
个人理解:
其实实现微信支付很简单,只需要调用小程序给我们封装好的方法uni.requestPayment()即可。而调用这个方法所需要的参数都是由后端处理好返回给我们的,
步骤
1:首先我们要向自己的服务器发起一次请求,传递我们需要消费或购买物品的信息,包括单价,数量,等。具体信息有项目需求决定。
2:然后我们就会收到我们自己服务器返回给我们的调用uni.requestPayment所需要的参数其中包括timeStamp,nonceStr,package,paySign。
3:收到服务器返回的参数以后,我们就可以在请求成功的回调函数中调用uni.requestPayment的方法了。
4:最后就是支付结果了,uni.requestPayment会有支付成功和支付失败的回调。分别在这两个回调函数中告诉自己的服务器支付结果即可。
代码如下:
home.OrderSave(param, (res) => { //param为购买物品的信息
uni.requestPayment({
provider: 'wxpay',
timeStamp: res.data.timeStamp,
nonceStr: res.data.nonceStr,
package: res.data.package,
signType: 'MD5',
paySign: res.data.paySign,
success: (_res) => {
home.PayGetOrder({
transaction_id: res.data.out_trade_no
}, (res) => {})
},
fail: (err) => {
home.PayGetOrder({
transaction_id: res.data.out_trade_no
}, (res) => {
console.log(that.select_item)
})
}
});
})