springMVC怎么改变form的提交方式为put或者delete

简介: 想着练习一下创建restful风格的网站呢,结果发现在jsp页面上并不能灵活使用put和delete提交方式.下面我的解决办法一. form 只支持post和get两种提交方式,只支持get提交方式二.

想着练习一下创建restful风格的网站呢,结果发现在jsp页面上并不能灵活使用put和delete提交方式.下面我的解决办法

一. form 只支持post和get两种提交方式,只支持get提交方式

二. 使用过滤器+form隐藏标签的方式在后台改变form提交方式

a)在web.xml文件中添加过滤器

    <filter>
        <filter-name>HiddenHttpMethodFilter</filter-name>
        <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
    </filter>
    
    <filter-mapping>
        <filter-name>HiddenHttpMethodFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

注意:web.xml文件的标签有严格的前后顺序,标签的位置不能放错,不然会提示

The content of element type "web-app" must match "(icon?,display-
 name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-
 mapping*,session-config?,mime-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-
 ref*,resource-ref*,security-constraint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".

b)在jsp页面的form中增加隐藏节点

<input type="hidden" name="_method" value="put" />

value的值可以为"delete,put,get"等http允许的提交方式名

目录
相关文章
|
4月前
|
JSON 数据格式
Nestjs(三)接收参数 @Query @Body @Param(post、get 、put、delete ...)
Nestjs(三)接收参数 @Query @Body @Param(post、get 、put、delete ...)
162 4
|
5月前
极简了解GET、POST、DELETE、PUT区别
极简了解GET、POST、DELETE、PUT区别
73 0
|
安全 应用服务中间件
Form表单method属性的两种提交方式Get和Post的区别
Form表单method属性的两种提交方式Get和Post的区别
201 0
|
前端开发 数据库
浅谈Ajax请求中的GET,POST,PUT,DELETE,PATCH,OPTIONS
浅谈Ajax请求中的GET,POST,PUT,DELETE,PATCH,OPTIONS 在日常的前后端交互,数据请求中最长用的就是Ajax,当然在面试时也经常会被问道请求的方式有哪些?分别什么不同?一般我们都会回答GET请求和POST请求,但其实在后端配置接口时,请求方式不仅这两种,还会有PUT,DELETE,PATCH等,当然我们在开发的时候偶尔也会遇到接口要求使用这几种方式进行请求,下面我们就来讲一讲这几种方式分别有什么不同。 首先先要了解http定义与服务器进行交互的方式,其中基本的有GET,POST,PUT,DELETE,PATCH是后增的方式。同时还要知道URL代表的是 统一资源
浅谈Ajax请求中的GET,POST,PUT,DELETE,PATCH,OPTIONS
|
JSON 分布式计算 Hadoop
PUT 和 POST-更新Ⅰ之全局更新|学习笔记
快速学习 PUT 和 POST-更新Ⅰ之全局更新。
226 0
PUT 和 POST-更新Ⅰ之全局更新|学习笔记
|
JSON 分布式计算 Hadoop
PUT 和 POST_更新Ⅰ之全局更新 | 学习笔记
快速学习 PUT 和 POST_更新Ⅰ之全局更新
184 0
PUT 和 POST_更新Ⅰ之全局更新 | 学习笔记
YII2 save 和 insert 循环保存数据,出现间隔性丢失值 (这些值是共有相同的值) 解决: // 每次保存需要用 clone 不能使用直接用一个 实例化的model.
YII2 save 和 insert  循环保存数据,出现间隔性丢失值 (这些值是共有相同的值) 解决:  // 每次保存需要用 clone 不能使用直接用一个 实例化的model. $_model = clone $timeTask;$_model->setAttributes($save);if ( ! $_model->save()) {参考: http://www.
1709 0
|
Java 数据格式 JSON