您的位置:首页 > 编程语言 > Java开发

struts2学习dem007_token令牌防止重复提交

2012-10-11 21:57 323 查看
第一种:将其显示到一个错误的页面 -- --- ----论坛网站用的较多

1.》jsp页面:

创建个提交的jsp页面,加上一个<s:token></s:token>即可

如:

<form action="<%=basePath%>/login" method="post">

用户名:<input type="text" name="username"/><br/>

密 码:<input type="password" name="password"/><br/>

<s:token></s:token>

<input type="submit" value="登 录"/>

</form>

2》Action页面:

就写个验证登陆的:

3》struts.xml页面:

在<action>里面加上过滤器:

<result name="success">/loginSuc.jsp</result>

<result name="invalid.token">/repeatSubmitError.jsp</result>//将其重复提交时转向的页面

<interceptor-ref name="token"></interceptor-ref>

<interceptor-ref name="defaultStack"></interceptor-ref>

Ok-------------------------------------

验证:当你登录到成功页面时,再次刷新会提交到重复提交的页面!

第二种:利用tokenSession。就是发现重复提交,则为用户返回result的Success结果。还是返回到登录成功的页面,只不过后台并不是你想象的那样成功,他只访问Action一次,其余几次都被拦截器拦截。

(常用于购物网站)

1》jsp页面同上

2》action页面同上

3》struts.xml页面

<result name="success">/loginSuc.jsp</result>

<result name="invalid.token">/loginSubmitError.jsp</result>

<interceptor-ref name="tokenSession"></interceptor-ref>

<interceptor-ref name="defaultStack"></interceptor-ref>

这一直是成功页面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: