Spring 3 MVCは、GET、POST、PUT、およびDELETEの4つのRESTfulメソッドすべてをサポートします。しかし、そのビューテクノロジーはフォーム上でそれらをサポートしていますか?そうでない場合、タグでのmethod
属性の実際の使用法は何ですか?form:form
フォームでPUTメソッドを使用しようとしました:
<form:form action="/myaction" method="PUT">
...
</form:form>
生成されたHTMLは次のとおりです。
<form id="command" action="/myaction" method="post">
<input type="hidden" name="_method" value="PUT"/>
...
</form>
ほとんどのブラウザはGETとPOST以外の他のメソッドをサポートしていないので、それは明らかです。しかし、Springはinput
名前_method
と値を追加してそれを処理できますMETHOD_NAME
。しますか?
指定されたフォームをで注釈が付けられたコントローラーメソッドに送信すると
@RequestMapping(method=RequestMethod.PUT)
POST
リクエストメソッドはサポートされていないと主張しています。しかし、なぜそうPOST
ではないのPUT
ですか?内部で実際に何が起こりますか?