时间:2010-07-26 09:28:01

标签: java spring spring-mvc

6 个答案:

答案 0 :(得分:19)

如果您将表单“发布”到网址/测试中,

method = POST将有效。

如果您在浏览器的地址栏中键入网址并按Enter键,则始终为GET请求,因此您必须指定POST请求。

Google为HTTP GETHTTP 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。希望这将起作用