使用delete出错

使用delete出错

    @DeleteMapping(value = "/delete/{id}")
    public String delete(@PathVariable("id")int id){
            courseDao.delete(id);
            return "redirect:findAll";
}

11-Sep-2019 19:04:14.653 警告 [http-nio-10086-exec-9] org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver.handleHttpRequestMethodNotSupported Request method 'GET' not supported


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
芝芝兰兰 2019-09-12 10:27:24

同学你好,将错误简单翻译一下,我们就能大体知道它是什么意思哦

HTTP Status 405 – Method Not Allowed
HTTP状态405–不允许的方法
Type Status Report
类型状态报告
Message Request method 'GET' not supported
不支持消息请求方法“get”

可以看出仍然是get请求,没有变为delete请求。

普通的浏览器form表单只支持GET与POST请求,而DELETE、PUT等method并不支持,spring3.0添加了一个过滤器,可以将这些请求转换为标准的http方法,使得支持GET、POST、PUT与DELETE请求,该过滤器为HiddenHttpMethodFilter。所以要检查一下,在web.xml中HiddenHttpMethodFilter有没有配置:

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

检查完毕,将更改保存。需要完全关闭Tomcat。点击一下http://img1.sycdn.imooc.com//climg/5d79ad010961b5b700360040.jpg重新编译。然后重新启动Tomcat试一下~

祝学习愉快~

提问者 肖小小 2019-09-11 19:16:22

HTTP Status 405 – Method Not Allowed

Type Status Report

Message Request method 'GET' not supported

Description The method received in the request-line is known by the origin server but not supported by the target resource.



问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师