微信小程序前端如何和后端对接支付(一点都不神秘)

2,469 阅读2分钟

没做过支付的前端可能感觉微信支付比较神秘,但是在前后端分离的团队里,前端做微信支付还是相当简单的。


在前端这块,我们只需要调用微信接口来发送支付请求就行了

我们就拿通常业务说一下

1.一般支付我们只需要生成订单(生成订单的后台接口)返回的商品id,

2.id返回我们需要传给后端定制好的下单接口,

3. 这个时候,后端接收到了需要下单的商品id,就会去数据库查询价格(为什么要从数据库查呢,毕竟涉及到支付的东西来说,涉及钱的还是后台做比较好一点),

4. 这个时候重点来了,这个下单id会返回给我们后端和微信服务器已经交流好的东西(你不需要知道他们之间做了什么)。


然后通过返回的4个字段调用支付接口wx.requestPayment,按照下面顺序把字段传进去(顺序一定不能变!)。

wx.requestPayment({
  timeStamp: '',
  nonceStr: '',
  package: '',
  signType: 'MD5',
  paySign: '',
  success (res) { },
  fail (res) { }
})

调用成功会返回什么场景呢。


(在微信开发工具里,不会弹出一个给你输入密码的框,自行扫码付钱)

需要注意的点:

1.在调用wx.requestPayment调起微信接口的时候,一定要打印success和fail回调的函数。

2.只要上图的支付框开打开了,如果支付失败(可能会有签名失误类的问题),不用担心,后端问题,保证传值传对就行了。


3.调起微信支付的字段最好后端传,因为像调起支付接口用到的字段package你是获取不到的。

4.整个流程还是比较简单,对于前端来说,只是调两三个接口而已。5.整个流程不管怎么变,最后都是为了调用wx.requestPayment调起支付


调起微信支付文档 wx.requestPayment:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/payment/wx.requestPayment.html


如果对你有所帮助,请帮我点点赞~