struts中token的使用方法2011-10-28 blogjava rrong_m很多时候要防止重复提交,比如论坛在发表提问的时候,要是不控制那就可以一直提交~使用方法:论坛为例ask.do :为跳到提问页面的actionask.jsp:为提问页面askok.do:为提问成功提交的actionaskok.jsp:处理提问之后的跳转的jsp首先在ask这个action里面加入saveToken(request);这是为了在提问页面即ask.jsp页面生成一个隐藏 的表单<input type="hidden" name="org.apache.struts.taglib.html.TOKEN" value="a6b9ff6834284444001b8206723b654d">在ask。jsp页面做以下处理:使用form为<html:form method="post" action="askok.do"> 因此要引入这个标签 否则不会生成这个隐藏表单。form写法 1.1之后不写name 没有这个属性 但要在struts-config。xml里面配置这个actionform 我们 可以定义为question 同时要配置askok这个action里面要写入对应的form<action path="/askok" type="....." name="question">必须写上这个否则会报找不到FORM的 错误如果要在ask。jsp这个页面做js处理要用到FORM name的话可以直接写 question 因为struts自动 生成了这个form的name 生成之后的:<form name="bangquestion" method="post" action="/askok.do">ask.jsp 这个页面自动生成加入FORM name然后在askok.do里面写if (isTokenValid(ac.getRequest(),true)) {
添加提问}else{跳转提示}