我收到下面的代码415 HTTP不支持的媒体类型错误:Spring MVC的POST Unsupporeted媒体类型
Spring MVC的控制器:
@RequestMapping(value="/addItem", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> addItem(@RequestBody final ToDoItem item) {
toDoItemDao.create(item);
return new ResponseEntity<String>(HttpStatus.OK);
}
JavaScript的AJAX请求:
$.ajax({
url: ToDoDemo.serverRoot + "/addItem",
type:'POST',
contentType: 'application/json',
dataType:"json",
data: JSON.stringify(oItem),
success: function() {
...
},
error: function(jqXHR, strStatus, strErrorThrown) {
...
}
});
POM。 xml:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.8</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.8</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.9.7</version>
</dependency>
StackOverflow上有很多类似的问题我尝试使用它们的解决方案,但没有一个适合我。 我错过了什么?
如果你指定'datatype:“json”',你不需要你的'headers'。 –
您使用的是什么Spring版本? –
@SotiriosDelimanolis我正在使用3.2.0.RELEASE –