struts2的token机制:
在struts-default.xml里面的Interceptor叫做token
在页面里面加:
<s:token></s:token>
页面会加隐藏域,有隐藏值
当刷新页面,首先在服务器端的session里面生成一个随机数,然后再把随机数放到form里,提交的时候会对比,提交完成之后会清除掉。
还要在struts.xml配置
<interceptor-ref name="token" ></interceptor-ref>
放在拦截器最后
在
<interceptor-ref name="token" ></interceptor-ref>
下面写一个
<result name="invalid.token" >/error.jsp</result>
当出错会跳转到error页面
源码:
在struts-core的Interceptor下面的TokenInterceptor.class里面
但是token很少用,可以添加之后重定向另一个页面来解决。