博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Token机制,防止web页面重复提交
阅读量:5217 次
发布时间:2019-06-14

本文共 445 字,大约阅读时间需要 1 分钟。

1.业务要求:

页面的数据只能被点击提交一次

2.发生原因:
由于重复点击或者网络重发,或者nginx重发等情况会导致数据被重复提交

3.解决办法:
集群环境:采用token加redis(redis单线程的,处理需要排队)
单JVM环境:采用token加redis或token加jvm内存

4.处理流程:
1. 数据提交前要向服务的申请token,token放到redis或jvm内存,token有效时间
2. 提交后后台校验token,同时删除token,生成新的token返回
token特点: 要申请,一次有效性,可以限流
5.注意:

redis要用删除操作来判断token,删除成功代表token校验通过,如果用select+delete来校验token,存在并发问题,不建议使用

原文:http://www.cnblogs.com/netfocus/p/5453930.html

转载于:https://www.cnblogs.com/gaobing/p/6673452.html

你可能感兴趣的文章
Idea 提交代码到码云(提交到github也大同小异)
查看>>
c#连接excel2007未安装ISAM解决
查看>>
Mono 异步加载数据更新主线程
查看>>
初识lua
查看>>
我是插件狂人,jDuang,jValidator,jModal,jGallery
查看>>
张季跃 201771010139《面向对象程序设计(java)》第四周学习总结
查看>>
如何解除循环引用
查看>>
android中fragment的使用及与activity之间的通信
查看>>
字典【Tire 模板】
查看>>
jquery的contains方法
查看>>
python3--算法基础:二分查找/折半查找
查看>>
Perl IO:随机读写文件
查看>>
Perl IO:IO重定向
查看>>
优化算法系列-模拟退火算法(1)——0-1背包问题
查看>>
转:基于用户投票的排名算法系列
查看>>
WSDL 详解
查看>>
[转]ASP数组全集,多维数组和一维数组
查看>>
C# winform DataGridView 常见属性
查看>>
逻辑运算和while循环.
查看>>
Nhiberate (一)
查看>>