Ajax向後台傳json格式的資料出現415錯誤的原因分析及解決方案_AJAX相關

來源:互聯網
上載者:User

問題描述:

  ajax往後台傳json格式資料報415錯誤,如下圖所示

頁面代碼

function saveUser(){var uuId = document.getElementById("uuid").value;var idCard = document.getElementById("idCard").value;alert(uuId+idCard);// var result = new Object();// result.uuId = uuId;// result.idCard = idCard;// var saveData = JSON.stringify(result);// alert(saveData);$.ajax({url : "xdds/saveUser.do?random=" + Math.random(),type : "post",data : {"uuid" : uuId,"idCard" : idCard},// data:saveData,dataType : 'json',// contentType : "application/json",success:function(data){}});}

  後台代碼

@RequestMapping(value = "/saveUser.do", method = { RequestMethod.POST })@ResponseBodypublic Map<String, Object> saveUser (@RequestBody MapUser user){Map<String, Object> map = new HashMap<String, Object>();System.out.println(user.getUuid()+user.getIdCard());map.put("result", "fda");return map ;}

錯誤分析:415 (不支援的媒體類型) 請求的格式不受請求頁面的支援

正確的json格式{key:value, key:value}key和value應該都帶雙引號。上面的前台代碼data中的資料value不帶雙引號,所以導致報錯(因為前面接觸的項目這樣寫是沒問題)

所以初步分析可能應為架構的問題,有的架構可以將

data : {"uuid" : uuId,"idCard" : idCard}這種封裝成正確的json格式。

具體原因還不知道,博主也是小白,等博主搞清楚會分享出來的

解決辦法:將前台注釋的代碼開啟

var saveData = JSON.stringify(result)<br>這個函數可以轉化成真確的json格式。<br><br>ps:小白一個,有不對的地方請大神指正;有大神知道具

以上所述是小編給大家介紹的Ajax向後台傳json格式的資料出現415錯誤的原因分析及解決方案,希望對大家有所協助,如果大家有任何疑問歡迎給我留言,小編會及時回複大家的!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.