在做微信支付这里,目前的流程是:
用户进入支付页面时,服务器根据订单信息,金额等参数向服务器申请一个统一下单 ID,然后传到前台,JS 来调用支付。微信官方的意思是这个统一下单prepay_id
有效期是 2 小时,在这之内可以重复使用同一个 ID。那么每次都屌用统一下单获得新的 id,和缓存旧的 id2 小时,各自都有什么优劣呢?
1
airyland 2018-01-21 11:37:01 +08:00
缓存,因为一般电商流程订单过期时间是 30 分钟。
|
2
codeeer 2018-01-21 11:46:45 +08:00 via iPhone
缓存它没意义,每次提交充值时都用新的不好嘛?
|
3
gdtv 2018-01-21 11:48:44 +08:00
我缓存了。
每调用一次统一下单接口,不管有没有付款成功,都会在微信商户中心生成一条订单记录,如果不缓存,买家多次点击购买但不付款,就会生成很多条记录,虽然没什么坏处,但看着不爽。 |
4
sdrzlyz 2018-01-21 15:30:07 +08:00 via Android
区别在于缓存的话,直接拿自己缓存的 id 去付款。。。没缓存的话,调用微信 api 生成 id,去付款。。。
|
5
metrxqin 2018-01-21 17:16:08 +08:00 via Android
没有接触过微信支付,但根据你的描述我认为缓存更好,因为假如第一次支付失败的话,用户发起第二次支付少请求了一次服务器,也就意味支付时间没有因为支付失败次数而线性增加。
|
6
qiayue 2018-01-21 17:20:43 +08:00
3 楼的是常用做法
|