浏览器控制台报错:
java控制台报错:JSON parse error: Unrecognized token ‘username’: was expecting (‘true’, ‘false’ or ‘null’)
首先展示写错的代码
$.ajax({
type : "POST",
url : "/getMenu.do",
async : true,
data : {username:"admin"},
dataType : "json",
contentType : "application/json",
success : function(data){
alert(JSON.stringify(data));
alert('调用成功');
},
error : function(data){
alert(JSON.stringify(data));
alert('调用失败');
}
});
从报错信息可知,username无法被java识别,说明数据格式不规范,后来查了资料,发现标准的JSON格式是这样的
键(key):用双引号括起来
值(value):用双引号括起来,其中值类型中数字,布尔型或者null不需要用双引号
我的代码中键username没有用双引号括起来,还有一个很严重的问题就是,{}表示这个是对象,那么要想拼接JSON字符串,必须用JSON.stringify转化,所以正确的是这样写的
data : JSON.stringify({"username":"admin"}),