php传递json到js 失败,Ajax向后台传输json格式数据出现错误应如何处理

这次给大家带来Ajax向后台传输json格式数据出现错误应如何处理,处理Ajax向后台传输json格式数据出现错误的注意事项有哪些,下面就是实战案例,一起来看一下。

问题描述:

ajax往后台传json格式数据报415错误,如下图所示

61c65a51665c0d1f10be585da96c00f1.png

页面代码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:小白一个,有不对的地方请大神指正;有大神知道具

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值