时间:2021-05-28
问题描述:
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 })@ResponseBodypublic Map<String, Object> saveUser (@RequestBody MapUser user){Map<String, Object> map = new HashMap<String, Object>();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)<br>这个函数可以转化成真确的json格式。<br><br>ps:小白一个,有不对的地方请大神指正;有大神知道具以上所述是小编给大家介绍的Ajax向后台传json格式的数据出现415错误的原因分析及解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了jQuery向后台传入json格式数据的方法。分享给大家供大家参考。具体分析如下:前后台数据交互一般都用json格式,后台可以直接将json对应转
一、产生原因前端传json格式数据,后台接收却发现有一堆",但是如果后台接收参数用@RequestBody注解,则不会出现这个问题,出现这一问题的原因
最近在做项目交互的时候,刚开始向后台传递数据返回415,后来百度添加了contentType:“application/json“之后返回400,然后把传输的数
MySQL出现错误1418的原因分析及解决方法具体错误:使用mysql创建、调用存储过程,函数以及触发器的时候会有错误符号为1418错误。ERROR1418(H
微博账号格式错误的原因及解决方法: 1、字数有问题。出现电话号码格式错误的提示框。首先得检查电话号码是否输入正确,有时候难免会因为个人的疏忽写错数字。 2、