springboot使用Result风格采坑:Request method ‘DELETE’ not supported

  • Post author:
  • Post category:其他


我们知道传统风格 删除:/deleteCategory?id=123 GET

Restful风格 删除:/categories/123 DELETE

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

通过js将方法改为delete。

在这里插入图片描述

使用@DeleteMapping(“/categories/{id}”)确定映射,传参时还是习惯的用int id,结果就报Request method ‘DELETE’ not supported,经过一阵折腾发现,改为Category c(实体类),就行了,或者(@PathVariable(“id”) int id也可以解决。

我理解的是传统风格 删除:/deleteCategory?id=123,路径里有id,与形参名相同就能将参数传入,但是Restful风格/categories/123 DELETE

路径里只有参数值没有参数名,无法形成映射,所以出错了,而@PathVariable是spring3.0的一个新功能:接收请求路径中占位符的值

故而可以成功,另外使用Category c(实体类)自动封装也能。



版权声明:本文为weixin_44895676原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。