防止表单的多次提交情况处理
来源:互联网 发布:cda数据分析师level1 编辑:程序博客网 时间:2024/06/07 00:01
在说明处理方案前,我们先来列举一下有哪些情况会出现表单重复提交的情况,接着我们从客户端到服务端的顺序逐一说明处理方案。
- 多次点击提交按钮
- 提交表单后,点击浏览器的后退按钮
- 使用浏览器的历史记录重复提交表单
- 点击浏览器的刷新按钮
若有读者发现仍有其它重复提交表单的情况,欢迎留言提出,谢谢。
客户端角度
- 在提交表单后,使用JS将提交按钮disable。这种方法可以防止用户多次点击提交按钮,但若是客户端禁止了js或者用户知道表单提交的地址以及表单的结构,自行生成表单进行重复提交,该方法也就无效了。
- 在请求表单页面时,服务端生成一个能够标识的特殊标志串,存在Session中,并放在表单的隐藏域里。服务端接收处理表单数据时,检查标识串与Session中的标识串是否一致,若一致表明是首次提交,则立即从哪Session中删除,然后正常处理数据,否则不再处理。
- 使用Cookie记录表单提交的状态,根据其状态可以检查是否已经提交表单。若客户端禁止了Cookie,该方法将不起作用。
服务端角度
- 使用Post/Redirect/Get模式,简单来说就是提交表单后,执行一次客户端的重定向,转到提交成功信息提示页面。这种方式能够避免客户重复按刷新和点击后退按钮导致的重复提交表单。
- 在数据库里添加唯一约束或者创建唯一索引,防止出现重复数据。这也是一种防止重复提交表单数据的方式。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
b.在servlet中:
转载内容详情点击打开链接
转载内容详情点击打开链接
阅读全文
0 0
- 防止表单的多次提交情况处理
- 防止表单多次的提交
- 防止表单多次提交
- 防止多次提交表单的JS
- 防止表单提交按钮多次提交的办法
- 防止表单提交按钮多次提交的办法
- ASP防止重复多次提交表单的方法
- ASP防止重复多次提交表单的方法
- struts2中防止多次提交表单的token标签
- 表单的多次提交
- 防止form表单提交按钮多次点击导致提交多次
- 如何防止多次提交同一个表单?
- 使用tokenid 防止表单多次提交
- js 防止表单多次重复提交
- 防止表单多次提交,添加重复数据
- 防止表单提交的
- 用几行Asp代码实现防止表单多次被提交
- 用几行ASP代码实现防止表单多次被提交
- iOS开发之cocoapods安装(2017)
- 用BeautifulSoup来写python爬虫
- Java-Collection源码分析(七)——HashMap
- 延时处理(Timer/TimerTask,Handler)
- 使用Git bash上传项目至Github
- 防止表单的多次提交情况处理
- 代码模拟手机与SIM卡的组合关系。
- 前端周报:前端面试题及答案总结;JavaScript参数传递的深入理解
- python生成百万级URL的sitemap文件
- 对象的组合 课堂练习4
- 相机取色器
- Java语言使用简单易懂的算法在控制台用 * 打印菱形
- java基础之八大类型
- Hive 内建操作符与函数开发——深入浅出学Hive