一、ajax请求常见的问题
1.跨域问题;
2.$.ajax 没设置 dataType,及服务器端没设置respon.ContentType
3.传送json数据时,json数据格式错误
二、遇到的问题
1.请求描述:
前端:$.ajax({
url : 'LoginIn',
type : 'post',
cache : true,
async : false,
dataType : 'json',
success : function(dta){
alert('success')
},
error : function(){
alert('error')
}
});
服务器端:
response.setContentType("text/json");
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
String result=null;
response.getWriter().print(result);
2.问题:
前端能够请求数据成功,但是执行的是error方法。
3.解决办法
因为返回的是字符串,但是前后端定义的是返回的json字符串,这会导致数据格式的错误,所有最后执行了error方法。将dataType改为text,response.setContentType("text/plain"),表示返回文本格式。
三、拓展
response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。
参考链接:点击打开链接