zoukankan      html  css  js  c++  java
  • struts2中使用token避免重复提交

    1.在struts.xml中

    <action name="register" class="org.sunxin.struts2.action.RegisterAction">
          <!-- 配置异常映射,当RegisterAction抛出Exception异常时,向用户显示error.jsp页面-->
          <exception-mapping result="error" exception="java.lang.Exception"/>
          
          <result name="input">/pages/register.jsp</result>
          <result name="success">/pages/success.jsp</result>
          <result name="error">/pages/error.jsp</result>
          <result name="invalid.token">/pages/register.jsp</result>
          <result name="wait">wait.jsp</result>

       <interceptor-ref name="defaultStack"></interceptor-ref>
       <interceptor-ref name="token">
           <param name="excludeMethods">input</param>
          </interceptor-ref>
    </action>
    2.在页面中加
    <s:actionerror/>
    <s:form action="register" method="post">
        <s:token></s:token>
    </s:form>
    3.<interceptor-ref name="token"/> 
    <interceptor-ref name="token-session"/>
    <!--注意struts2.0 拦截器名字为token-session struts2.1.2 已经更改为tokenSession -->
    token: 在活动中检查合法令牌(token), 防止表单的重复提交; 在<s:actionerror/>会产生提示信息
    token-session: 同上, 但是在接到非法令牌时将提交的数据保存在session中; 不会在<s:actionerror/>会产生提示信息

    只会在后台发出警告并处理,如下:
    警告: Form token KO80SIJW4F84034NG5HM1ZBUGOVNY64D does not match the session token null.

  • 相关阅读:
    从win到多系统
    markdown编辑器抉择经历(做笔记多系统用户)
    最新的hosts
    Hosts 长期更新【已停】
    设备选型(选择交换机、选择路由器的技能指标)
    传输控制协议(TCP)
    数据的封装与解封装
    网络分类及OSI七层模型
    第一课 IP通信
    Twilio收发短信笔记
  • 原文地址:https://www.cnblogs.com/jamin/p/1569507.html
Copyright © 2011-2022 走看看