根据Spring文档(在这里)的说明:
尽管HTTP定义了这四种方法,但HTML仅支持两种:GET和POST。幸运的是,有两种可能的解决方法:您可以使用JavaScript来执行PUT或DELETE,或者只需使用“真实”方法作为附加参数(在HTML表单中建模为隐藏输入字段)进行POST。
他们采用了后一种方式,并可通过以下Spring MVC表单标记实现:
问题在于当我点击“删除”时,我的页面会抛出以下错误:
我使用了RestClient并使用DELETE方法,该方法如预期一样被调用。我在这里做错了什么?
尽管HTTP定义了这四种方法,但HTML仅支持两种:GET和POST。幸运的是,有两种可能的解决方法:您可以使用JavaScript来执行PUT或DELETE,或者只需使用“真实”方法作为附加参数(在HTML表单中建模为隐藏输入字段)进行POST。
他们采用了后一种方式,并可通过以下Spring MVC表单标记实现:
<form:form method="delete">
<input type="submit" value="Delete"/>
</form:form>
问题在于当我点击“删除”时,我的页面会抛出以下错误:
HTTP Status 405 - Request method 'POST' not supported
我将org.springframework.web
的调试级别改为debug并发现以下信息:
DEBUG AnnotationMethodHandlerExceptionResolver - Resolving exception from handler [foo.bar.MessageForm@da9246]:
org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported
我使用了RestClient并使用DELETE方法,该方法如预期一样被调用。我在这里做错了什么?