赞
踩
首先在对项目开启支付功能,在项目的manifest.json
文件中勾选APP模块配置中的Payment支付模块
,并将需要的信息填写完整,如下图
除此之外还需要其他的一些配置,下面开结合图片来一步步的详细了解下:
如上图提交云端打包界面所示,相对于支付宝微信在各方面的要求比较全面,对项目要使用微信支付必须严格按照微信官方的要求来配置,如上面图片所示:必须使用自有证书,证书别名,证书私钥密码和证书文件缺一不可,有关证书的制作过程可参考官方教程如何生成证书,其中关于签名部分:
生成的签名就是一串字符串,记住要将其中的冒号全部删除掉
,然后需要登录微信公共平台将应用签名和应用包名进行绑定,将上述配置完成以后就可以打包上传到云端了,下面就开始码代码了。
下面是逻辑代码:
//APP微信宝支付
deposit() {
const that = this;
// 调用uniapp API uni.getProvider 获取服务供应商
uni.getProvider({
/* 获取服务类型,可选值如下:
* @param share: 分享
* @param oauth: 授权登录
* @param push: 推送
* @param payment: 支付类型
*/
service: 'payment',
success: (res) => {
/*
* @ res.service 获取服务供应商 ==> 'payment'
* @ res.provider 这里选择的是支付类型,所以包含["alipay","wxpay"]
* ‘alipay’: 表示支付宝
* ‘wxpay’: 表示微信
*/
// 检查res.provider中是否有 alipay
if (res.provider.indexOf('wxpay') != -1) {
// 后台支付接口需要的一些参数
let data = {
id: that.id, // 订单id
pay_type: that.pay_type // 支付类型
};
//发起后台支付接口请求
that.$api.payMonry(data).then(res => {
// console.log('微信订单数据', res);
//调用uniapp API uni.requestPayment 支付接口
uni.requestPayment({
//服务提供商 通过uni.getProvider获取
provider: 'wxpay',
//后台返回的订单数据
orderInfo: res.data.pay_result,
//调用成功的回调
success(res) {
// console.log('success:' + res);
setTimeout(() => {
uni.reLaunch({
url: `/pages/user/order/orderList?status=${that.status}&type=${that.type}`
})
}, 1500)
},
//调用失败的回调
fail(err) {
console.log('fail:' + err);
}
})
}
}
}
})
}
到此代码部分就结束了,看起来是不是很简单,其实和支付宝支付一样,只不过就是服务商不同而已。支付宝使用alipay
,微信使用wxpay
。
下面是有关真机调试的相关介绍:
在开发中我们避免不了要进行大量的调式,在对微信支付进行调试的时候,我常用的有两种方法进行调试,各有不同,下面来介绍下:
PS:以上内容希望可以帮到大家,步骤有不懂的或者开发过程中遇到了什么问题,都可以在下方留言,博主看到后会尽最大努力帮助大家解决问题,共同进步~~~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。