整个流程其实很简单,但是多了一步授权就把我搞迷糊了,授权其实就是获取openid,可以在一开始做,也可以在需要支付的时候做,然后再跳转回去。支付大体流程就是:
1.授权。用户进入你的商品页面,然后你获得他的授权,就是得到code,然后用code获取openid(获得openid的那一步其实就是让用户调到腾讯的一个页面,然后他会把code发送到你url里拼接的一个回调url上),把openid发回刚才的商品页面去,再用户点击支付的时候 把openid当做参数发给服务端。
2.下单。接收到openid和你的商品信息,然后就加签,转xml,调用统一下单的api,获得 预支付标识 prepay_id。
3.发起支付。把prepay_id,时间戳 ,appid等参数放进集合里,加签,然后将加签结果也放到集合,返回给客户端
4.客户端接收参数,发起支付(我用的是H5支付的那个)
渣渣流程图大家随便看看就好: