當使用jQuery.ajax()呼叫Spring MVC Controller的方法時,如果該方法的參數有@RequestBody
則會拋出下面錯誤。
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/x-www-form-urlencoded' not supported
因為jQuery.ajax()
預設的contentType
為application/x-www-form-urlencoded
,但@RequestBody
不支援這種格式。@RequestBody
通常是用來處理application/json
或application/xml
如果原本@RequestBody
的參數只是為了接收form表單的serialized的值,可以改用@RequestParam
來處理。例如
@RequestMapping(value = "/getUser")
@ResponseBody
public String getUser(@RquestParam MultiValueMap) {
// some code here
}
參考:
沒有留言:
張貼留言