摘录:网页form表单重复提交的问题

网页form表单重复提交的问题

1,IE”后退“按钮可以导致页面重新提交;

2,刷新成功提交后的提示信息(返回)页面,也能导致重复提交;

3.遨游,IE8,等支持同一窗口多标签的浏览器也可以提交多次

4:提交后后退到前一页面,会导致再次提交

5:网速慢引起的重复提交

原因:

出现这种情况是表单提交只在客户端进行了限制(比如点击提交后,按纽就处于不可点击状态),而可能由于各种原因导致这个功能失效,所以解决这个问题根本办法是在服务器端对表单做判断,如果传递两个完全一样的表单参数,服务器就会拒绝第二条消息,只记录一条

测试方法:抓包确定发送表单的http消息,然后根据此消息构造两条完全一样的消息,用自己编写的程序或测试脚本发送给服务器端,如果数据库生成两条一样的记录,则测试不通过,如果只生成一条正确的记录,则测试通过

原因:

1.多开导致的重复提交

2.后退没有清除session

3.刷新功能

4.数据库里没有做限制,类似订单这种数据,是应该做唯一性限制的。做了限制之后,即使重复提交,也会抛出错误,捕获一下就行了。

发布了104 篇原创文章 · 获赞 5 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/fen_fen/article/details/6085593