微信支付统一下单接口获得的 prepay_id,是否应该缓存呢?

2018-01-21 11:35:03 +08:00
 dangyuluo

在做微信支付这里,目前的流程是:

用户进入支付页面时,服务器根据订单信息,金额等参数向服务器申请一个统一下单 ID,然后传到前台,JS 来调用支付。微信官方的意思是这个统一下单prepay_id有效期是 2 小时,在这之内可以重复使用同一个 ID。那么每次都屌用统一下单获得新的 id,和缓存旧的 id2 小时,各自都有什么优劣呢?

9413 次点击
所在节点    微信
6 条回复
airyland
2018-01-21 11:37:01 +08:00
缓存,因为一般电商流程订单过期时间是 30 分钟。
codeeer
2018-01-21 11:46:45 +08:00
缓存它没意义,每次提交充值时都用新的不好嘛?
gdtv
2018-01-21 11:48:44 +08:00
我缓存了。
每调用一次统一下单接口,不管有没有付款成功,都会在微信商户中心生成一条订单记录,如果不缓存,买家多次点击购买但不付款,就会生成很多条记录,虽然没什么坏处,但看着不爽。
sdrzlyz
2018-01-21 15:30:07 +08:00
区别在于缓存的话,直接拿自己缓存的 id 去付款。。。没缓存的话,调用微信 api 生成 id,去付款。。。
metrxqin
2018-01-21 17:16:08 +08:00
没有接触过微信支付,但根据你的描述我认为缓存更好,因为假如第一次支付失败的话,用户发起第二次支付少请求了一次服务器,也就意味支付时间没有因为支付失败次数而线性增加。
qiayue
2018-01-21 17:20:43 +08:00
3 楼的是常用做法

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/424636

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX