大家好,我是你的好朋友思创斯。今天说一说uniapp微信小程序支付功能_小程序实现微信支付,希望您对编程的造诣更进一步.
前端提交订单把商品信息传到后端,后端生成订单然后返回 uni.requestpayment api必填的参数,调起微信支付输入密码,完成订单交易!
必填的几个参数如下
provider:服务提供商
timestamp:时间戳
noncestr:随机字符串
package:统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=xx
signtype:签名算法
paysign:签名
官方文档:
这里贴一下项目代码,可以根据你的项目需求修改业务逻辑代码
uni.request({
url: '', //生成订单接口地址
data: {
access_token: '', //用户令牌
order_info: '', //商品信息
//.....................
},
method: "", //请求方式
datatype: '', //服务器返回的数据类型
header: { //请求头
'content-type': 'application/x-www-form-urlencoded'
},
success: (res) => {
if (res.data.code == 0) {
// 调起微信支付输入密码
uni.requestpayment({
provider: 'wxpay',
timestamp: res.data.data.timestamp,
noncestr: res.data.data.noncestr,
package: res.data.data.package,
signtype: res.data.data.signtype,
paysign: res.data.data.paysign,
success: function(res) {
uni.showtoast({
title: '支付成功',
icon:'success',
duration: 2000
});
//处理支付成功后其他的业务逻辑
// uni.request({
// url: api['apiroot'] 'order/pay-success',
// data: {
// access_token: '',
// order_id: '',
// },
// method: "get",
// datatype: 'json', //默认 json格式
// header: {
// '': ''
// },
// success: (res) => {
// uni.redirectto({
// url: ''
// });
// },
// })
},
fail: function(err) {
uni.showmodal({
title: '温馨提示',
content: '订单尚未支付',
showcancel: false,
success: function(res) {
if (res.confirm) {
uni.redirectto({
url: '',
})
}
}
});
}
})
} else {
uni.showtoast({
title: '支付失败',
duration: 2000
});
}
}
})
后端要开通微信支付,微信公众号认证
1.必须是企业,个人用户不行
2.去微信支付平台提交资料审核
3.成为商户,拿到商户id、支付密钥key
微信支付平台地址:
小程序绑定微信支付要填写小程序 appid 、小程序appsecret
管理员登录微信公众平台获取:
文章由思创斯整理,转载请注明出处:https://ispacesoft.com/43162.html