Request method 'POST' not supported

今天项目里面出现了Request method 'POST' not supported。一个不容易发现的原因导致的,记录下来,以便后来的人别花太多的时间在这个上面。

我们项目使用的是 Spring MVC + Freemarker。

出现此问题的现象:

1. 页面上直接form提交,并且已经指明 method=“post”

<form action="xxxx" class="tableForm" method="post"></form>

2. Spring controller未指明method,所以get, post都支持

@RequestMapping(value = "/orderList")

3. 在我的controller执行完成之后返回到我指定的页面的时候出现的错误

 

出现此问题的原因:

简单的说就是我页面上include了其他的ftl文件,这个ftl文件又调用了一个controller,这个controller指明了使用get方式调用,所以报错了。也就是为什么我的方法是在返回ftl之后报错的。

 

总结:

Request method 'POST/GET' not supported  就是在页面上请求的method和controller中指定的method不一样出现的错误。简单的就是直接提交的controller上的问题。复杂的就是请求的页面中include了其他页面,其他页面又用include_page调用了不一样的method的controller出现的错误。

你可能感兴趣的:(Request method 'POST' not supported)