SpringMVC处理Put或Delete请求报错及解决方法

本文介绍了在SpringMVC中处理PUT或DELETE请求时遇到的HTTP Status 405错误,该错误源于JSP不支持PUT和DELETE请求。解决方法是在Controller方法上添加@ResponseBody注解,使响应直接写入输入流,不再经过视图处理器,从而成功处理RESTful请求。

首先先贴原代码和报错提示
1.在web.xml配置文件中配置HiddenHttpMethodFilter,它的作用是能把POST请求转换为PUT或DELETE请求。

<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>

2.配置视图解析器

<!-- 配置自动扫描的包 -->
	<context:component-scan base-package="com.boyu.springmvc"><
SpringMVC请求报错400时,通常是因为请求参数的格式不正确者缺少必要的参数。在SpringMVC中,我们可以使用@InitBinder注解来处理日期类型的转换问题。通过设置SimpleDateFormat的setLenient属性,我们可以选择是否自动计算日期,从而避免输入逻辑错误的日期报错。 另外,当使用axios发送post请求时,需要确保请求参数正确地被发送到后端。可以检查请求头和请求体的数据是否正确。如果请求参数是以JSON形式发送的,需要注意请求头中的Content-Type是否设置为application/json。如果请求参数是以表单形式发送的,需要确保请求体中包含正确的参数键值对。 如果以上方法仍然无法解决400错误,可以进一步检查后台接口的代码逻辑,确保参数的接收处理逻辑正确无误。另外,查看后台日志也可以提供更多有关错误的信息,帮助我们定位问题所在。 综上所述,当SpringMVC请求报错400时,可以通过检查请求参数的格式和内容,以及设置日期转换的处理方法解决问题。如果问题仍然存在,可以进一步检查后台接口的代码逻辑和日志信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [axios发送post请求springMVC接收不到参数的解决方法](https://download.youkuaiyun.com/download/weixin_38723513/12762822)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [SpringMVC “400”错误](https://blog.youkuaiyun.com/Strong997/article/details/96903619)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值