
在Web应用中接入微信支付,原本以为只需调用几个API稍作调试即可轻松搞定。然而,微信的API和官方文档中却暗藏无数“陷阱”,让我在摸索过程中不禁怀疑人生,历经艰辛才一步步克服。
【记者手记】
以下是一些我在接入过程中遇到的主要“陷阱”:
一、关于WeixinJSBridge对象
在查阅网页端调起支付API的开发文档时,WeixinJSBridge对象便跃然纸上。然而,尽管这个对象仅在微信浏览器中有效,可以用来判断用户是否在微信浏览器中访问应用,但一旦调用,却发现后续操作受限。这个“陷阱”让我耗费了1.5天时间。
二、几个签名的混淆
在调试签名过程中,网上充斥着各种哭诉,很多人在签名处调试多日无果。原因在于整个工作流程中涉及至少三个签名,稍有不慎就会用错。从统一下单接口到JSSDK调用,再到wx.chooseWXPay,每个环节都需要正确使用对应的签名。这个“陷阱”让我耗费了2天时间。
三、两个Access_token
微信提供了两个Access_token,尽管官方文档用加粗文字提醒两者不同,但在开发过程中,我还是陷入了混乱。一个是网页授权的access_token,需要用户授权后才能获取;另一个是普通的access_token,支持公众号的各种基础服务。最终,我才发现真正需要使用的是第二个token,这个“陷阱”让我耗费了1.5天时间。
……

【记者手记】
为了防止以后再次陷入“陷阱”,我总结了以下接入微信支付的流程,供大家参考。
准备工作:
1. 公众号一枚,并开通微信支付功能。
2. 在微信公众平台配置支付授权目录。
3. 在开发者中心配置接口权限表。
4. 在公众号设置中配置JS接口安全域名。
5. 在开发者中心获取APPID、APPSecret、商户ID和key。
接入步骤:
1. 引导用户进入应用,并使用OAuth验证。

2. 使用code获取openId。
3. 调用统一下单接口。
4. 前端配置wx.config。
5. 服务端生成wx.config所需的signature。
6. 配置chooseWXPay。
7. 生成chooseWXPay所需的签名paySign,平博体育平台。
8. 测试。
【记者手记】
虽然接入微信支付的流程看似清晰,但在实际开发和调试过程中,我还是遇到了不少困难。特别是对后端语言不熟悉,导致一些用JS三秒就能解决的问题,用后端语言却频繁报错。在此过程中,感谢那些给予我语法指导的朋友。