码迷,mamicode.com
首页 > 其他好文 > 详细

使用token令牌控制接口幂等性

时间:2020-06-20 13:10:08      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:提交表单   重复   spring拦截器   boot   数值   令牌   实现   缓存   tee   

使用spring拦截器,注解,redis实现。
前端请求表单设置id=token的隐藏(hedden)输入框,使用ajax请求时先获取token输入框的值,
若值为空表示首次提交,先请求获取服务器token的接口(后端服务器将token值加入redis缓存,设置过期时间15min),
返回后为隐藏域赋值。然后在表单提交时带上token参数值,若首次提交请求,后台处理逻辑判断token
存在于redis缓存中表示首次请求,验证通过并删除redis中对应的token值(若业务逻辑处理失败出现异常再将token值放入redis中),
后续若重复请求表示发现缓存中token值不存在,提示(长时间未提交表单,表单过期请刷新【较少发生】)或请勿重复提交!
实现代码: https://gitee.com/mint31/barry-spring-boot/tree/master/src/main/java/com/example/demo/autoidempotent

参照:
https://blog.csdn.net/weixin_42214548/article/details/102557531?utm_source=app
https://blog.csdn.net/jiahao1186/article/details/91793691
https://mp.weixin.qq.com/s?__biz=Mzg2MjEwMjI1Mg==&mid=2247493373&idx=1&sn=6953f10125945ad6105d603cf0750d6b&chksm=ce0e517ef979d868e4f33b739a9f02483f91af2c6337b1e8d899c97f6df2556592a85a9d43ad&mpshare=1&scene=23&srcid=06163VvcbphgUYVKiDNtVXR6&sharer_sharetime=1592308833640&sharer_shareid=31a887b367cac7d354789a3c04c26465#rd

使用token令牌控制接口幂等性

标签:提交表单   重复   spring拦截器   boot   数值   令牌   实现   缓存   tee   

原文地址:https://www.cnblogs.com/mintsd/p/13168011.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!