Rumah  >  Artikel  >  hujung hadapan web  >  解决spring mvc 返回json数据到ajax报错parseerror问题

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

亚连
亚连asal
2018-05-22 15:28:401817semak imbas

最近使用ajax接收spring mvc传过来的json数据时总是出现parseerror的错误,下面通过本文给大家分享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"}

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

Ajax 配合node js multer 实现文件上传功能

Ajax跨域请求的原理(图文教程)

jQuery Validator验证Ajax提交表单的方法和Ajax传参的方法(图文教程)

Atas ialah kandungan terperinci 解决spring mvc 返回json数据到ajax报错parseerror问题. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:JS常用算法实例汇总Artikel seterusnya:Ajax实现动态加载数据