問題描述:
ajax往后臺傳json格式數(shù)據(jù)報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 })
@ResponseBody
public MapString, Object> saveUser (@RequestBody MapUser user){
MapString, Object> map = new HashMapString, Object>();
System.out.println(user.getUuid()+user.getIdCard());
map.put("result", "fda");
return map ;
}
錯誤分析:415 (不支持的媒體類型) 請求的格式不受請求頁面的支持
正確的json格式{key:value, key:value}key和value應該都帶雙引號。上面的前臺代碼data中的數(shù)據(jù)value不帶雙引號,所以導致報錯(因為前面接觸的項目這樣寫是沒問題)
所以初步分析可能應為框架的問題,有的框架可以將
data : {"uuid" : uuId,"idCard" : idCard}這種封裝成正確的json格式。
具體原因還不知道,博主也是小白,等博主搞清楚會分享出來的
解決辦法:將前臺注釋的代碼打開
var saveData = JSON.stringify(result)br>這個函數(shù)可以轉化成真確的json格式。br>br>ps:小白一個,有不對的地方請大神指正;有大神知道具
以上所述是小編給大家介紹的Ajax向后臺傳json格式的數(shù)據(jù)出現(xiàn)415錯誤的原因分析及解決方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!
您可能感興趣的文章:- 詳解ajax的data參數(shù)錯誤導致頁面崩潰
- 快速解決ajax請求出錯狀態(tài)碼為0的問題
- PHP 中使用ajax時一些常見錯誤總結整理
- 完美解決ajax跨域請求下parsererror的錯誤
- ajax跨域訪問報錯501的解決方法
- jQuery中ajax錯誤調試分析
- Ajax犯的錯誤處理方法
- js ajaxfileupload.js上傳報錯的解決方法
- 解決ajax返回驗證的時候總是彈出error錯誤的方法
- Jquery Ajax Error 調試錯誤的技巧
- django使用ajax post數(shù)據(jù)出現(xiàn)403錯誤如何解決
- Ajax報錯400的參考解決辦法