微信小程序开发之微信支付(一)
日期: 2018-05-01 分类: 跨站数据 311次阅读
现在微信支付功能已经成为应用中一个必不可少的功能。要实现微信支付,阅读微信支付文档是必不可少的。可是复杂的支付流程和大量的参数让人头大。
接下来我来捋一捋开发流程(前:表示前端 后:表示后端)
1.微信登录
前:wx.login{} 获取code ------> wx.request{} 向后台传送code
(为了方便阅读,只写出了最基本的代码)
//app.js
App({
onLaunch: function() {
wx.login({
success: function(res) {
if (res.code) {
//发起网络请求
wx.request({
url: 'https://test.com/onLogin', //向后台传code的地址
data: {
code: res.code
}
})
} else {
console.log('登录失败!' + res.errMsg)
}
}
});
}
})
后:由code获取openID
(为了使小程序开发变得渐变,我使用了别人已写好的SDK,避免重复造轮子)
public String login(String code) {
if (StringUtils.isEmpty(code)) {
return "code is empty";
}
try {
WxMaJscode2SessionResult sessionResult = wxMaService.getUserService().getSessionInfo(code);
log.info("openid: openid={}", sessionResult.getOpenid());
log.info("sessionKey: sessionKey={}", sessionResult.getSessionKey());
return JsonUtil.toJson(sessionResult);
} catch (WxErrorException e) {
log.error(e.getMessage());
return e.toString();
}
}
2.微信下单
后:组合订单信息 -----> 调用统一下单接口(https://api.mch.weixin.qq.com/pay/unifiedorder)----->获取与处理信息prepay_id ----->组合签名 ------>返回前端五个参数和签名
3.确认支付
前:调用wx.requestPayment{}发起支付
wx.requestPayment(
{
'timeStamp': '',
'nonceStr': '',
'package': '',
'signType': 'MD5',
'paySign': '',
'success':function(res){},
'fail':function(res){},
'complete':function(res){}
})
4.回调支付结果
后:异步通知返回支付结果
只是简单捋了一下支付步骤。接下来会详细介绍各个环节
给大家推荐一个好用的SDK,它实现了微信小程序的各种接口,开发起来更便利
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:微信小程序 微信支付
精华推荐