`

在jsp中渲染隐藏的方法域

    博客分类:
  • jsp
阅读更多

相信大家都遇到过在浏览器中表单提交的时候如果使用post和get是完全没有问题的,但是你使用delete和put方式提交,能够成功吗?

目前html5和一些新的浏览器支持所有的http方法,但是不是全部浏览器都支持,这个时候你如果还是想通过浏览器进行提交该怎么办了?

 

哈哈,不绕圈子了
html表单中,将put和delet请求伪装成post请求就可以了,关键是创建一个带有隐藏域并且method为post的表单。例如下面:

<form method="post">

     <input type="hidden" name="_method" value=“delete"/>

     .......

</form>

 

下面还有一种更简单的方式:

当使用spring 的表单绑定库时,<sf:form>会让其变得更加简单。你可以讲method属性设置为期望的HTTP方法,<sf:form>将为你隐藏域:

<sf:form method="delete" modelAttribute="spitter">

</sf:form>

 

当然你的服务器端还是应该做相应的配置。

web.xml

<filter>

   <filter-name>httpMethodFilter</filter-name>

   <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>

</filter>

<filter-mapping>

    <filter-name>httpMethodFilter</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>

这里我们将HiddenHttpMethodFilter匹配到/*模式,这样所有URL的请求在到达DispatcherServlet前都会经过HiddenHttpMethodFilter。

注:通过非浏览器发送的请求以及RestTemplate发送的请求,没有必要包装成post,因此他们都支持所有的HTTP请求方式。

分享到:
评论

相关推荐

    jsp数字分页

    - **分页参数处理**:可以使用URL重写或者隐藏表单域来避免在URL中显示分页参数,提升安全性。 - **缓存机制**:对于不经常变动的数据,可以考虑使用缓存来减少数据库访问。 - **动态调整每页显示数量**:允许用户...

    JSP程序设计期末复习总结及模拟试题.pdf

    - `&lt;%@ include file="..."&gt;` 指令用于静态包含其他文件内容,文件在编译时被合并到JSP页面中。 3. **JSP动作标签** - `&lt;jsp:include page="..."&gt;` 动作标签用于动态包含文件,只有在JSP运行时才会将文件加入,...

    100家大公司java笔试题汇总.pdf

    考生需要掌握异常处理的基本原则,比如异常分为检查型异常(checked exception)和非检查型异常(unchecked exception),以及在方法声明中需要明确指出可能会抛出的检查型异常。 对于J2EE组件的理解,题目考到了...

    shiro-springboot01.zip

    3. 权限控制:在Thymeleaf模板中,可以使用Thymeleaf的条件表达式结合Shiro的权限注解,动态展示或隐藏页面元素。例如,`th:if="${#shiro.hasPermission('admin')}"`可以检查用户是否具有"admin"权限。 4. 会话管理...

    Struts 2.0 标签库简介.doc

    - `&lt;s:hidden&gt;`: 创建一个隐藏域,用于存储不显示的值。 - `&lt;s:head/&gt;`: 在HTML头标签中使用,表示头文件的结束。 I. 国际化与页面引用: - `&lt;s:i18n name=""&gt;`: 加载资源包到值堆栈,支持国际化。 - `...

    javaScript使用EL表达式的几种方式

    JavaScript中的EL(Expression Language)表达式,是一种在JavaServer Pages (JSP)中常见的用于访问和操作服务器端数据的语言。它允许开发者以简洁的方式获取和处理服务器上的变量和对象。在JavaScript中使用EL表达式...

    2021-2022计算机二级等级考试试题及答案No.10722.docx

    - **解释**:在Windows中,一个文件可以同时拥有多个属性,如只读、隐藏、存档等。一个文件既可以设置为只读,也可以同时设置为系统属性。 ### 21. ASP.NET页面生命周期 - **知识点**:ASP.NET页面的生命周期。 - ...

    2021-2022计算机二级等级考试试题及答案No.14569.docx

    例如,在使用JSP作为视图层的情况下,Servlet负责接收用户的请求,调用相应的业务逻辑(如访问数据库获取数据),然后将结果传递给JSP页面进行渲染。 #### SQL查询练习题解析 1. **查询选修了‘计算机原理’的学生...

    软件编码规范-CodeConventions_V1.0.0.pdf

    - **隐藏域(hidden)使用约定**:在表单中使用隐藏域传递数据,但应谨慎使用,防止数据泄露。 - **按钮(button)使用约定**:区分提交按钮和重置按钮,使用不同的事件处理函数。 **四、JavaScript编程规范** - *...

    webwork标签

    - `&lt;ww:hidden&gt;`:创建一个隐藏域。 - `&lt;ww:doubleselect&gt;`:创建一组相关联的下拉列表。 - `&lt;ww:combobox&gt;`:创建一个下拉输入框,支持自定义输入。 - `&lt;ww:component&gt;`:创建自定义的组件,使用Velocity模板...

    Struts2标签库详解.doc

    20. `&lt;s:hidden&gt;`:创建一个隐藏域,用于存储表单数据但不在页面上显示。 21. `&lt;s:i18n name=""&gt;`:加载国际化资源包,使应用支持多语言。 22. `&lt;s:include value=""&gt;`:包含其他JSP或Servlet页面,实现页面的组合...

    Struts2标签应用.

    2. `&lt;s:action&gt;`:执行一个视图中的Action,允许在页面上直接触发Action方法。 3. `&lt;s:actionerror&gt;`:显示Action中的错误信息,如果有错误,会自动渲染出来。 4. `&lt;s:actionmessage&gt;`:显示Action中的消息,例如...

    struts2-s标签

    而在 Struts2 中,所有的标签都被统一管理,并通过在 JSP 文件头部声明 `&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;` 来启用 Struts2 的标签库。这种方式简化了开发过程中的配置工作,使得开发者可以更加专注于...

    学习struts很好的文档

    - `&lt;html:hidden&gt;`:生成隐藏域。 - `&lt;html:checkbox&gt;`:生成复选框。 - `&lt;html:multibox&gt;`:生成多选框。 - `&lt;html:radio&gt;`:生成单选按钮。 - `&lt;html:select&gt;`:生成下拉列表。 - `&lt;html:option&gt;`:生成选项。 - `...

Global site tag (gtag.js) - Google Analytics