小编给大家分享一下如何解决spring mvc 返回json数据到ajax报错parseerror问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
最近使用ajax接收spring mvc传过来的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 @ResponseBody Object groupFunctionEdit(@RequestBody List<YyGroupFunction> yyGroupFunctionList) throws JsonProcessingException{ return "success"; }
查询资料发现有如下解答:
当使用简单类型即:String这样的类型来接收数据时,不需要使用@RequestBody这个注解。
这里需要使用spring mvc处理json的依赖jar包:jackson.databind.jar
解决办法:
前端不用修改,在后台对需要的数据进行map封装再转化为String类型:
@RequestMapping("/groupFunctionEdit") public @ResponseBody Object groupFunctionEdit(@RequestBody List<YyGroupFunction> yyGroupFunctionList) throws JsonProcessingException{ Map<String,Object> map = new HashMap<String,Object>(); map.put("msg", "success"); ObjectMapper mapper = new ObjectMapper(); String msg = mapper.writeValueAsString(map); return msg; }
这样传到前端的数据变成了:
{"msg":"success"}
再使用jQuery可以解析到,不会报错。
看完了这篇文章,相信你对“如何解决spring mvc 返回json数据到ajax报错parseerror问题”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。