开发总结
微信官方文档,如果从”结构清晰 循序渐进”来评价,个人感觉”一般”
微信公众平台、微信商户平台,易用性一般,很多设置的关键入口不明显,而且时不时需要重新扫二维码再次登录
为尽快弄清流程,多找别人的博客,避免踩坑
技术环节繁多,尤其注意必传参数和签名规则
不是单纯开发后台接口,调起支付整个流程需要前后台配合
没有哪一个环节可以模拟数据进行测试,只能上线测(前端需要屏蔽测试入口),即使到了最后一步,前端拿到了支付参数,也不一定调的起支付
关于微信签名
有3次微信签名,若失败,校验在加密过程中是否带上必须带的参数,参数名区分大小,大小写错误签名验证会失败
- 统一订单接口 (自己计算签名)
- 拿到prepay_id后计算支付参数(自己计算签名)
- 微信支付回调 (需要校验签名判断消息是不是来自微信支付)
[签名详见] https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3
官方文档和博客
- 官方文档入口 https://pay.weixin.qq.com/wiki/doc/api/index.html
- 微信公众平台 https://mp.weixin.qq.com/
- 商户平台 https://pay.weixin.qq.com/
- [参考博客1](https://www.cnblogs.com/yimiyan/p/5603657.html)
- [参考博客2] (https://www.cnblogs.com/wancy86/p/wcpay.html)
开发思路
- 接口1 微信网页授权,前端经过一次url 跳转后url会带上code参数
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirec - 接口2 获取accessToken接口
https://api.weixin.qq.com/sns/oauth2/access_token?appid={APPID}&secret={SECRET}&code={CODE}&grant_type=authorization_code - 接口3 统一下单接口
https://api.mch.weixin.qq.com/pay/unifiedorde - 步骤4
微信内H5调起支付
代码和支付保障
前端代码
后台代码