解决spring mvc 返回json数据到ajax报错parseerror问题
最近使用ajax接收springmvc传过来的json数据时总是出现parseerror的错误,错误源码如下:
前端:
$.ajax({ type:'POST', url:"groupFunctionEdit", dataType:'json', contentType:"application/json", data:JSON.stringify(functiondata), success:function(data){ alert('数据加载成功'+data.msg); }, error:function(xhr,type){ alert('数据加载失败'); console.log(type); }
后台Controller:
@RequestMapping("/groupFunctionEdit") public@ResponseBodyObjectgroupFunctionEdit(@RequestBodyListyyGroupFunctionList)throwsJsonProcessingException{ return"success"; }
查询资料发现有如下解答:
当使用简单类型即:String这样的类型来接收数据时,不需要使用@RequestBody这个注解。
这里需要使用springmvc处理json的依赖jar包:jackson.databind.jar
解决办法:
前端不用修改,在后台对需要的数据进行map封装再转化为String类型:
@RequestMapping("/groupFunctionEdit") public@ResponseBodyObjectgroupFunctionEdit(@RequestBodyListyyGroupFunctionList)throwsJsonProcessingException{ Map map=newHashMap (); map.put("msg","success"); ObjectMappermapper=newObjectMapper(); Stringmsg=mapper.writeValueAsString(map); returnmsg; }
这样传到前端的数据变成了:
{"msg":"success"}
再使用jQuery可以解析到,不会报错。
以上所述是小编给大家介绍的解决springmvc返回json数据到ajax报错parseerror问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!