最近使用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 實作檔案上傳功能
jQuery Validator驗證Ajax提交表單的方法和Ajax傳參的方法(圖文教學)
以上是解決spring mvc 回傳json資料到ajax報錯parseerror問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!