在SpringMVC中用@RequestBody接收Json的问题,总是报415,经过一翻查找
前台js的post:
var postdata ='{"title":"这是一个标题","describe":"这是一个描述"}';
$.ajax({
type :'POST',
contentType :'application/json',
url :'/home/requestbodybind',
processData :false,
dataType :'json',
data : postdata,
success : function(data) {
alert('title :'+data.title+'\ndescribe :'+data.describe);
},
error : function() {
alert('error...');
}
});
该有的都有
后台:
@RequestMapping(value = "modelautobind", method =RequestMethod.POST)
public String modelAutoBind(HttpServletRequest request, @ModelAttribute("accountmodel") NewsModel newsModel, @ModelAttribute("sessionaccountmodel") NewsModel newsModel1) {
newsModel.setTitle("视图");
newsModel1.setTitle("session视图");
//model.addAttribute("accountmodel", newsModel);
return"modelautobind";//视图名字
}
网上说需要加入 consumes = "application/json",加了 还是一样报错,后面去掉后也没影响
springmvc的配置文件中有:
后来有查到对json的解析需要引入
com.fasterxml.jackson.core
jackson-databind
2.5.3
在springmvc配置中用得到
加上重新跑,这时通过
以上就是整个解决过程。
网友评论