token解决重复提交问题
如果避免重复提交呢?
请知道的详细说下,或者把文章的链接地址写下也好。
应用环境是tomcat,struts1.2,jsp,hibernate
下面是问题,请看到后能给一个解决方案。
1。如果点击一次提交按钮后,服务器开始处理,在后台的代码中使用struts的token机制控制重复提交。然后服务器处理完毕返回到一个新的列表页面。此时刷新页面,则服务器当作重复提交对待。
2。如果点击一次提交按钮后,服务器开始处理,在后台的代码中使用struts的token机制控制重复提交。然后服务器处理时发生一个异常,于是返回一个错误页面,告诉用户哪个字段有错误,然后用户点击返回按钮,返回上一个页面,再次提交页面时,用户器则把这次的提交当作了重复提交对待。
3。如果点击一次提交按钮后,服务器开始处理,在后台的代码中使用struts的token机制控制重复提交,服务器还没有处理完毕时,用户等不及了,再次单击提交按钮,则struts的token机制不会把此当作重复提交,而是会两样处理这次的提交。
jsp 中插入代码 <s:taken/>
<form name="form" id="creditChangeform" method="post"><s:token></s:token></form>
?
struts.xml中配置
<action name="addcashpoint" method="addCashPoint"> <interceptor-ref name="defaultStack"/> <interceptor-ref name="token"/> <result name="invalid.token">/WEB-INF/error.jsp</result> </action>
?
?
图15-4 ?标记(token)标签和标记(token)interceptor在一起工作,
用于在action每次执行前验证token