`
digyso
  • 浏览: 142668 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

struts 1.x 用token防止重复提交

阅读更多

struts 防止重复提交
流程: a页面 ->> A action ->> b页面 ->> B action ->> b页面

会发生重复提交的是在 b页面

代码
A action: saveToken(request);

b 页面: <input type="hidden" name="org.apache.struts.taglib.html.TOKEN" value="<%=session.getAttribute

("org.apache.struts.action.TOKEN")%>"/>

B action:
if(isTokenValid(request, true)){ //不是重复提交
//do something
//return mapping
}
else {//重复提交
saveToken(request);
//do something
//return mapping
}


当form用的是<html:form>提交的时候,只有在前一个action saveToken,当前action做判断就行了
但是<html:form>的自由度没<form>大
所以用<form>时,要加上
<input type="hidden" name="org.apache.struts.taglib.html.TOKEN" value="<%=session.getAttribute

("org.apache.struts.action.TOKEN")%>"/>
这句话在用<html:form>时,是struts自动帮我们加上的

分享到:
评论

相关推荐

    Struts1.x实现防止提交的Token使用示例

    以下是对Struts1.x中使用Token防止提交的详细说明: 1. **理解Token机制**: Token机制的核心思想是在客户端和服务器之间建立一种绑定关系,每个提交请求都必须携带一个服务器生成并已存储的唯一令牌。如果令牌...

    Struts1.x令牌(Token)的使用.rar

    而Struts1.x的令牌机制(Token)则是防止重复提交、跨页请求攻击的重要手段。在此,我们将深入探讨Struts1.x令牌的使用方法及其背后的原理。 首先,理解为何需要令牌。在Web应用中,用户可能会意外或恶意地多次点击...

    struts2学习笔记.doc

    - 使用Token机制防止重复提交。 - 在`struts.xml`中配置Token拦截器。 - 在Action类中处理Token验证逻辑。 #### 八、杂项 **8.1 常见问题解答** - **问题汇总**:针对Struts2开发过程中常见的问题进行总结和解答...

    struts 1的标签的用法详细

    用于防止重复提交。`saveToken(request)`在请求处理前保存令牌,`isTokenValid(request)`检查令牌是否有效。若有效则继续处理,否则提示用户重复提交。 #### 7. RequestUtil 和 TagUtils - `RequestUtil`提供对请求...

    Struts2.1学习笔记

    - **token防止表单重复提交**:使用`&lt;s:token&gt;`标签可以生成一个隐藏字段,防止用户多次提交同一个表单。 通过以上内容的学习,可以全面了解Struts2.1框架的核心特性和使用方法,这对于开发者来说是非常宝贵的资源...

    java web demo

    `Struts1.x令牌(Token)的使用.rar`则涉及Struts 1.x框架中的令牌机制,这是一种防止重复提交和跨站请求伪造(CSRF)的安全措施。在表单提交过程中,Struts会生成一个唯一的令牌并存储在session中,同时将其作为隐藏...

    java ee应用技术知识要点.doc

    Java EE应用技术主要涵盖Web应用开发的多个方面,如框架、持久层、依赖注入和面向切面编程等。以下是对这些知识点的详细说明: 1. **Struts框架启动方式**: ...防止表单重复提交通常使用`token`标签。

    struts_tag

    `&lt;s:token&gt;` 生成和检查令牌,防止重复提交。 Y. `&lt;s:url&gt;` 创建URL,可以附加参数,例如:`&lt;s:url action="myAction"&gt;&lt;s:param name="param1" value="value1" /&gt;&lt;/s:url&gt;`。 Z. `&lt;s:validate&gt;` 验证表单字段。 ...

    2014—SHH面试题

    - **防止重复提交**:Struts 1.x中使用Token机制,保存一个唯一的Token,如果提交时Token未改变,则认为是重复提交。Struts 2使用内置的Token拦截器实现类似功能。 - **请求验证失败后变量丢失**:可以将ActionForm...

    struts 2标签库介绍

    虽然 Struts 2 不再推荐使用 Struts 1.x 的标签,但在某些情况下仍然可能见到 `&lt;s:bean&gt;` 标签。此标签用于访问 JavaBean 的属性值。例如:`&lt;s:bean name="user" property="firstName"/&gt;`,这里的 `name` 指定了 ...

    下面就介绍下Struts2每个标签的用法(有错请指正):

    - **用途**:相当于 Struts1.x 中的 `&lt;bean&gt;` 标签,用于创建 JavaBean 实例。 - **示例**: ```xml &lt;s:bean name="myBean" id="beanInstance" class="com.example.MyBean"/&gt; ``` ##### 8. `&lt;s:checkbox&gt;` 标签 ...

    ssh 框架技术

    - **token防止表单重复提交拦截器**:防止用户重复提交表单。 - **自定义拦截器**:可以通过实现Interceptor接口来创建自定义拦截器。 #### 六、Hibernate基础 ##### 1. 持久化、持久层 - **持久化**:将内存中的...

    java必备知识点大全.pdf

    防止表单重复提交:为了防止表单被重复提交,可以使用token令牌或者点击后禁用提交按钮。 JSP标签:JSP标签用于在JSP文件中嵌入Java代码。 过滤器器:过滤器是用于对Web应用中的请求和响应进行预处理和后处理的...

Global site tag (gtag.js) - Google Analytics