Ajax的数据类型实例分析
导读:本文共1154字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 在 Ajax 的使用中,遇到了一个这样的问题:界面开发出来是用在手机上使用的,但是数据是通过服务器提供的 API,在界面上使用 JQuery 的 Ajax 来调用数据,开始怎样也调用不到,而且不报毛病,后面现在浏览器测试好了,在放手机上加载本地的界面。1、服务器关键代码以下:/***@seeHttpServlet#doGet(HttpServletRequest... ...
目录
(为您整理了一些要点),点击可以直达。在 Ajax 的使用中,遇到了一个这样的问题:界面开发出来是用在手机上使用的,但是数据是通过服务器提供的 API,在界
面上使用 JQuery 的 Ajax 来调用数据,开始怎样也调用不到,而且不报毛病,后面现在浏览器测试好了,在放手机上加载本地的界面。
/**
*@seeHttpServlet#doGet(HttpServletRequestrequest,HttpServletResponse
*response)
*/
protectedvoiddoGet(HttpServletRequestrequest,
HttpServletResponseresponse)throwsServletException,IOException{
response.setContentType("text/javascript");//这个要注意
PrintWriterout=response.getWriter();
Stringcallback=request.getParameter("callback");
out.print(callback
+"([{name:'John',age:'19'},{name:'joe',age:'20'}])");
System.out.println("callback="+callback);
out.flush();
out.close();
}
$.ajax({
url:"http://localhost:8081/JsonpServer/JsonpServlet",
dataType:"jsonp",
jsonp:"callback",//传递给要求处理程序或页面的,用以取得jsonp回调函数名的参数名(默许为:callback),需和服务器端一致
jsonpCallback:"person",//自定义的jsonp回调函数名称,默许为jQuery自动生成的随机函数名
success:function(json){
//alert(json[0].name);
}
});
//相当于重写success后履行的函数(自定义为person)
functionperson(json){
alert("Iampersonfunction...");
alert(json[0].name);
}
分析:
最开始没有效果是 dataType:"json",所以测试了很久都没有出来,后面修改成dataType:"jsonp",就能够使用了。
缘由是dataType为json数据格式的时候,不能跨域访问,jsonp是跨域访问的。
Ajax的数据类型实例分析的详细内容,希望对您有所帮助,信息来源于网络。