当前位置:
首页 >
微信小程序开发之微信支付
发布时间:2025/3/19
37
豆豆
生活随笔
收集整理的这篇文章主要介绍了
微信小程序开发之微信支付
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
概述
最近这段时间接了一个蓝牙车位锁的项目;项目中包括APP和微信小程序;其中涉及在线支付功能,这里记录下微信小程序在线支付完功能
小程序在线支付流程
1.微信小程序登陆微信获取code 调用接口wx.login(OBJECT) // 登录 wx.login({success: res => {wx.setStorageSync('logoRes', res)// 发送 res.code 到后台换取 openId, sessionKey, unionId }})程序启动进行登录,把登录获取的信息缓存
2.微信小程序把第一步获取的code提交给第三方服务器 第三方接口通过微信小程序提交的code到微信服务器交换session_key 和 openid 这是微信获取 session_key 和 openid 的接口 https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code 参见文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-login.html#wxloginobject 3.小程序调用第三方程序下单接口 第三方程序接口做一些处理后调用微信服务器统一下单接口https://api.mch.weixin.qq.com/pay/unifiedorder 并且返回 prepay_id 参考资料: https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1 第三方服务器通过把第二部和第三步的接口获取到prepay_id 4.小程序通过第三步获取到prepay_id开始支付 小程序调用接口wx.requestPayment(OBJECT) 参考文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-pay.html#wxrequestpaymentobject https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_7&index=3 util.httpClient.httpGet("/parklock/manager/android/ble2/pay/xcx-pay-apply-by-code!loadopenid.do", {lockerId: 20001,code: value.code}, function (data) {//ASCII码从小到大排序(字典序)var signA = "appId=" + appid + "&nonceStr=" + data.nonce_str + "&package=prepay_id=" + data.prepayId + "&signType=MD5&timeStamp=" + data.timeStamp;
//拼接上商户keyvar signB = signA + "&key=" + "uber7390fjeiafn84JFIEJFRE883FAKf";
//排序后进行md5var sign = MD5Util.hexMD5(signB).toUpperCase();wx.requestPayment({'timeStamp': data.timeStamp+"",'nonceStr': data.nonce_str,'package': 'prepay_id=' + data.prepayId,'signType': data.signType,'paySign': sign,'success': function (res) {console.log("支付成功")wx.navigateTo({url: '../unlock/unlock?code=789',})},'fail': function (res) {console.log("支付失败",res)}})})
欢迎关注微信公众号【千里授渔】免费获取教学视频。
QQ507545336
转载于:https://www.cnblogs.com/qlsy/p/wchat_pay.html
总结
以上是生活随笔为你收集整理的微信小程序开发之微信支付的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 挪动脑袋吃汉堡?AR版《贪吃蛇》帮你治好
- 下一篇: 睡还是被睡,这是一个问题!