网络应用程序 – 解决双重提交问题

前端之家收集整理的这篇文章主要介绍了网络应用程序 – 解决双重提交问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想看看Web开发人员如何避免双重提交问题。基本上我对这个问题的理解如下:

当不耐烦的用户多次提交表单时会发生双重提交,从而导致问题。这个问题可以通过JavaScript(特别是jQuery脚本)修复,这些脚本在提交表单后禁用了提交按钮 – 这样做的一个缺点就是客户端禁用了JavaScript。

还有服务器端检测方法

所以我的问题是:

人们如何克服双重提交?
什么是双重提交引起的问题的真实例子?
任何Web应用程序框架都内置了双重提交工具吗?

解决方法

如果您正在使用java服务器端脚本并使用struts 2,那么您可以参考此链接,该链接讨论使用令牌。

http://www.xinotes.org/notes/note/369/

当请求与令牌第一次一起提交时,应该生成一个令牌并保存在初始页面呈现的会话中,在struts动作中运行一个线程名称作为令牌ID的线程并运行逻辑,无论客户端具有什么请求,当客户端再次提交相同的请求时,检查线程是否仍在运行(thread.getcurrentthread()。中断)如果仍在运行,则发送客户端重定向503。

请查看struts 2code的ExecuteAndWaitInterceptor,这个结合token的逻辑将有助于快速点击

猜你在找的HTML相关文章