JQuery的Ajax跨域请求原理概述及实例
北京pk10冠军技 发布时间:05-27 来源:鹏鹏编程网 浏览:76次
今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发
JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式。分别是JQuery的 jquery.ajax jsonp格式和jquery.getScript方式。 

什么是jsonp格式呢?API原文:如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型。使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的URL后面。服务器端应当在JSON数据前加上回调函数名,以便完成一个有效的JSONP请求。意思就是远程服务端需要对返回的数据做下处理,根据客户端提交的callback的参数,返回一个callback(json)的数据,而客户端将会用script的方式处理返回数据,来对json数据做处理。JQuery.getJSON也同样支持jsonp的数据方式调用。 

客户端JQuery.ajax的调用代码示例: 

代码如下:


$.ajax({ 
type : "get", 
async:false, 
url : "http://www.xyyjsbf.com/", 
dataType : "jsonp", 
jsonp: "callbackparam",//服务端用于接收callback调用的function名的参数 
jsonpCallback:"success_jsonpCallback",//callback的function名称 
success : function(json){ 
alert(json); 
alert(json[0].name); 
}, 
error:function(){ 
alert('fail'); 
}); 
 

服务端返回数据的示例代码: 

代码如下:


public void ProcessRequest (HttpContext context) { 
context.Response.ContentType = "text/plain"; 
String callbackFunName = context.Request["callbackparam"]; 
context.Response.Write(callbackFunName + "([ { name:\"John\"}])"); 
 

如果你有好的win10资讯或者win10教程,以及win10相关的问题想要获得win10系统下载的关注与报道。
欢迎加入发送邮件到657025171#qq.com(#替换为@)。期待你的好消息!
上海时时乐走势图 上海时时乐开 北京快乐8统计软件 北京快乐8选1稳赚 北京快乐8什么时候开奖 上海时时乐历史开奖结果
pk10冠军技巧5码公式 北京赛车pk10冠军公式 北京pk10猜冠军技巧 北京赛车pk10冠亚技巧 北京赛车pk10预测软件 北京快乐8历史走势图
北京pk10冠军走势图 北京pk10冠军选号技巧 北京赛车pk10冠军公式 北京pk10猜冠军技巧 pk10冠军技巧5码公式
北京赛车挂机方案 上海时时乐断组 pk10大小单双算法 河南体彩481开奖结果 北京pk拾定位胆玩法
早点加盟车 早餐店加盟哪家好 包子早点加盟 健康早餐加盟 中式早点加盟
早点 加盟 酸奶加盟 大福来早点加盟 网吧加盟 加盟早点
早餐 加盟 广式早点加盟 广式早餐加盟 早餐 加盟 爱心早餐加盟
全球加盟网 杨国福麻辣烫加盟费 早点加盟好项目 特许加盟 早点小吃店加盟
蓝月亮报码聊天室 辽宁快乐12分布走势 云南快乐十分前三遗漏 安徽快3计划 福利彩票开奖时间
百家乐投注 20选5开奖结果查询 pk10开奖记录 广东11选5任选二复式上皇巢网 天津11选5怎么玩挣钱
主流彩票 江苏11选5在线投注 大乐透历史号码比较器 广东11选5前二推荐 特区七星彩南国论坛
重庆时时彩开奖结果 管家婆彩图每期更新版 互联网彩票 福建快3走势图表 江苏快三开奖结果