Struts2解決重複提交問題(Token)

 方法一:
註冊頁面:
register.jsp

 <body>
 <form action="login.action" method="post">
  username:<input type="text" name="username"><br>
  password:<input type="password" name="password"><br>
  <!-- 這裏加上token標籤就OK,然後交給後臺處理 -->
  <s:token></s:token>
  <input type="submit" value="submit">
  </form>  
  </body>


struts.xml配置如下:

<action name="register" class="com.test.action.RegisterAction">
			<result name="success">/result.jsp</result>
			<!-- 這裏的name一定要爲invalid.token -->
			<result name="invalid.token">/repeatSubmitError.jsp</result>
			<interceptor-ref name="token"></interceptor-ref>
			<interceptor-ref name="defaultStack"></interceptor-ref>
		</action>


方法二:
jsp跟Action都不需要做任何改變,只需改變struts.xml的配置

 

<action name="register" class="com.test.action.RegisterAction">
			<result name="success">/result.jsp</result>
			<!--使用tokenSession攔截器,如果發現重複提交,會直接返回success的結果頁面
			一般論壇都使用這種方式,不管刷新多少次。其實都只執行一次
			 -->
			<interceptor-ref name="tokenSession"></interceptor-ref>
			<interceptor-ref name="defaultStack"></interceptor-ref>
		</action>


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章