Session 防止表单重复提交

Posted 大圣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Session 防止表单重复提交相关的知识,希望对你有一定的参考价值。

问题背景:当在注册时,触发了一次注册提交后,出现网络延迟或卡顿时,用户就会下意识的狂点注册按钮,这时问题就来了,多次提交后后台直接将提交的数据在数据库进行保存。

     ---这其实就是个非法操作。

 

-->解决方案:

  生成一个令牌。

  在session域中保存令牌。

  在表单中隐藏字段保存令牌。

  当表单提交时,在处理的Servlet里检查,如果提交的令牌和session中保存的令牌一致,则执行逻辑,并删除session中的令牌。

  如果session域中没有令牌,或和提交的令牌不符合,则认为是表单重复提交,提示。

 

  jsp中设置代码保存令牌我们此处用随机数作为令牌:

  

  在servlet中检查:

  

以上是关于Session 防止表单重复提交的主要内容,如果未能解决你的问题,请参考以下文章

使用Session防止表单重复提交

使用session防止表单进行重复提交

JavaWeb学习总结(十三)——使用Session防止表单重复提交

JavaWeb学习总结(十三)——使用Session防止表单重复提交

JavaWeb---总结(十三)使用Session防止表单重复提交

php防止表单重复提交