微信商品订单号重复,导致统一下单失败。 5C

用户点多次支付,提示商品订单号重复,导致同一下单失败。如何避免这样的问题。

12个回答

使用时间戳生成订单号,就避免了重复

baidu_41699603
baidu_41699603 对订单号进行判断,前端后端都可以加的
一年多之前 回复
qq_39666135
qq_39666135 好好看微信的稳定
一年多之前 回复
yxhlfx
双林子木 回复MOnkey?: 你时间戳的精度是多少?如果到微秒级出现重复的概率应该和中彩票差不多,但更严谨的做法可以用分类累加
一年多之前 回复
woainiliushuning
MOnkey? 就是这么干的 ,但是还是 重复了。后面还加了随机数
一年多之前 回复

前端防止表单重复提交,后端可以token验证

对订单号进行判断,前端后端都可以加的

判断订单号ID,应该可以避免

1:订单号最好定义一个确定唯一规则去生成,
2:重复提交问题,前后台最好都控制一下,因为只是一端的控制也可能会出问题,方法很多,比如前段控制在指定时间这个请求只能提交一次;

是使用 时间戳(精确度到毫秒 ) + 业务号 + 机器号 + 四位随机数 即可。

需要你做一个防重复提交

1.前端(APP 或网页) 请求时,锁屏,控制
2.后台 订单号 生成规则 (保证每次生成唯一)

——可以用年月日时分秒+自增数字,数字放缓存,默认1 取到了 +1再存,取不到再归零,过期时间弄个600左右毫秒就行了,改方法还需加锁

前端做一个放重复提交,可以用表单发起请求后就 disabled 返回数据后就 移除这个属性

后台判断,如果这个订单未支付则继续执行

共12条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!