前端向后端传参报415_Ajax向后台传json格式的数据出现415错误的原因分析及解决方法...
问题描述:ajax往后台传json格式数据报415错误,如下图所示页面代码function saveUser(){var uuId = document.getElementById("uuid").value;var idCard = document.getElementById("idCard").value;alert(uuId+idCard);// var result = new Ob
问题描述:
ajax往后台传json格式数据报415错误,如下图所示
页面代码
function saveUser(){
var uuId = document.getElementById("uuid").value;
var idCard = document.getElementById("idCard").value;
alert(uuId+idCard);
// var result = new Object();
// result.uuId = uuId;
// result.idCard = idCard;
// var saveData = JSON.stringify(result);
// alert(saveData);
$.ajax({
url : "xdds/saveUser.do?random=" + Math.random(),
type : "post",
data : {"uuid" : uuId,"idCard" : idCard},
// data:saveData,
dataType : 'json',
// contentType : "application/json",
success:function(data){
}
});
}
后台代码
@RequestMapping(value = "/saveUser.do", method = { RequestMethod.POST })
@ResponseBody
public Map saveUser (@RequestBody MapUser user){
Map map = new HashMap();
System.out.println(user.getUuid()+user.getIdCard());
map.put("result", "fda");
return map ;
}
错误分析:415 (不支持的媒体类型) 请求的格式不受请求页面的支持
正确的json格式{key:value, key:value}key和value应该都带双引号。上面的前台代码data中的数据value不带双引号,所以导致报错(因为前面接触的项目这样写是没问题)
所以初步分析可能应为框架的问题,有的框架可以将
data : {"uuid" : uuId,"idCard" : idCard}这种封装成正确的json格式。
具体原因还不知道,博主也是小白,等博主搞清楚会分享出来的
解决办法:将前台注释的代码打开
var saveData = JSON.stringify(result)
这个函数可以转化成真确的json格式。
ps:小白一个,有不对的地方请大神指正;有大神知道具
以上所述是小编给大家介绍的Ajax向后台传json格式的数据出现415错误的原因分析及解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)