php小程序支付获取prepay_id,小程序支付流程JSAPI

整个支付流程, 前端发起请求后端处理 用了整整两天,

各种坑,各种看文档难以理解,

头大

分享下步骤流程心得吧,

第一次接触可能会和我一样有踩坑的,

第一步

uniapp发起支付请求,其实这里第一步只是传一个金额和openid或者用户ID给后端

后端收到请求后 带着金额以及用户的openid 向腾讯【统一下单接口】发起第一次请求,

请求成功后腾讯会返给你一个临时订单号也就是prepay_id

当拿到prepay_id以后第一步就已经完成了,

第二步

给uni.requestPayment中的数据进行二次签名验证 !!! 这个梗卡了我两天,无力吐槽,

进行二次签名和第一次唯一不同的就是第二次多了个prepay_id,

此时前端的支付程序已经掉起,如果第二次签名验证没有问题的话就会弹出来支付的界面了.

下面上图

1.带着金额和用户信息发起请求(前提要先判断登录没登录,要获取openid)

59042bc5181dc59445ebe2d15de6171c.png

2.后端处理(PHP)发起统一下单请求获取prepay_id

deaf32bf996dcb04ecc0cfbab076e71a.png

3.拿到统一下单接口后进行二次签名验证(我选择的是在后端处理后返给前端)

c17e6c7a71b24f301735550028d72acb.png

4.前端拿到二次签名后的数据调起支付界面

4158015750c67556cc3f670423cdbffd.png

5.输入支付密码支付完成!

e2c7ea843488c1fb464e270d7774c880.png

具体就这么多吧

流程,前端带金额和用户信息发起请求>后端确认>拿金额和openid向腾讯发起请求>得到临时单号prepay_id>进行二次签名验证>返给前端>前端调起支付>输入密码支付>完成

代码部分

我的QQ5249812有问题可以互相探讨

腾讯微信支付接口签名校验工具:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值