加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

解决spring mvc 返回json数据到ajax报错parseerror问题

发布时间:2020-12-15 23:00:24 所属栏目:百科 来源:网络整理
导读:最近使用ajax接收spring mvc传过来的json数据时总是出现parseerror的错误,错误源码如下: 前端: $.ajax({ type: 'POST',url: "groupFunctionEdit",dataType: 'json',contentType: "application/json",data: JSON.stringify(functiondata),success: functio

最近使用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问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程小技巧网站的支持!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读