
在做微信支付这里,目前的流程是:
用户进入支付页面时,服务器根据订单信息,金额等参数向服务器申请一个统一下单 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 PRO 3 楼的是常用做法 |