我正在将一些json数据发送到POST URL。此代码在本地环境(tomcat + Windows)中可以正常工作,但不适用于生产环境(Tomcat + linux)。已经提到过各种链接,但是没有一个帮助我。
与生产环境一起发布操作系统,我也很早就从服务器删除了一些文件,我怀疑tomcat可能已损坏,但是其余所有url都工作正常。这是我正在做的新发展。
如果我通过firefox rest client打,也有相同的行为。
错误
服务器拒绝了此请求,因为请求实体的格式不受请求的方法所请求的资源支持
jQuery代码
$.ajax({
type : "POST",
url : "/add",
data : JSON.stringify(data),
dataType: 'json',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
success : function(resp) {
console.log(resp);
}
});
弹簧控制器
@RequestMapping(value = "/add", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody String addDishDetails(
@RequestBody MyPojo pojo) {
return "success";
}
pom.xml
还添加在罐子下面
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.3</version>
</dependency>
上面的评论和答案值得一读,在少数情况下可能是解决方案。
就我而言,我有一个财产Map<String,String>
,我需要忽略这一点。
所以我加了
@JsonIgnore
Map<String,String>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句