HessianTes 2022-01-06 10:03 采纳率: 58.3%
浏览 62
已结题

web请求提交接口如何防重复提交

我们现在的防重复提交方法是 写的自定义注解+切面的方式来实现防重复提交 将请求路径和请求的token组成redis的key 然后存在redis里面,下次进来看这个key是否存在 我们设置的过期时间是1s。
现在出现了问题 ,我们注册的时候有个操作是会去请求第三方接口的操作,但是这个时候返回的比较慢,就可能超过了1s,然后前端还没返回过去,他又请求过来了,这个时候第一个请求第三方返回了 然后执行了下面的操作,结果导致生成了重复的数据,分布式项目没有采用session的方式来进行重复提交验证,

  • 写回答

6条回答 默认 最新

  • zhengxchuang 2022-01-06 10:21
    关注

    key校验成功了马上就可以删了吧,过期时间可以设长一点,保证不一直堆积在redis里就行

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月16日
  • 修改了问题 1月6日
  • 创建了问题 1月6日

悬赏问题

  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥30 模拟电路 logisim
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪