答案 0 :(得分:19)
method = POST
将有效。
如果您在浏览器的地址栏中键入网址并按Enter键,则始终为GET
请求,因此您必须指定POST请求。
Google为HTTP GET
和HTTP POST
(还有其他几个如PUT DELETE)。他们都有自己的意思。
答案 1 :(得分:11)
更改
@RequestMapping(value = "/test", method = RequestMethod.POST)
要
@RequestMapping(value = "/test", method = RequestMethod.GET)
答案 2 :(得分:0)
我通过在控制器中包含get和post请求来解决此错误: method = {RequestMethod.POST,RequestMethod.GET}
答案 3 :(得分:0)
我也有同样的问题。我将其更改为以下内容并且有效。
Java:
@RequestMapping(value = "/test", method = RequestMethod.GET)
HTML code:
<form action="<%=request.getContextPath() %>/test" method="GET">
<input type="submit" value="submit">
</form>
默认情况下,如果未在表单中指定http方法,则使用GET。要使用POST方法,您需要明确说明它。
希望这会有所帮助。
答案 4 :(得分:0)
显然,某些POST请求看起来像服务器的“ GET”(例如Heroku ...)
所以我使用这种策略,它对我有用:
@RequestMapping(value = "/salvar", method = { RequestMethod.GET, RequestMethod.POST })
答案 5 :(得分:0)
如果您使用的是浏览器,则默认情况下始终可以在get上运行,您可以使用邮递员工具,否则可以将其更改为getmapping。希望这将起作用