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(#替换为@)。期待你的好消息!
上海时时乐开奖結果 北京pk10高手技巧最新 北京快乐8直播 北京pk10官方投注平台 北京pk10官网网址 北京快乐8怎么买
北京pk10冠军选号技巧 北京pk10冠亚军技巧 北京赛车pk10冠军公式 pk10冠军技巧5码公式 北京快乐8预测软件 快乐8预测
北京pk10冠军走势图 北京pk10冠军走势图 pk10冠军技巧5码公式 北京pk10冠军选号技巧 pk10冠军技巧5码公式
上海3D开奖走势号 北京赛车pk10经验交流 pk10冠亚和2.2对刷 北京快乐8 2个号概率 pk10冠亚和对刷套利 北京pk10开奖最快网址
春光早餐工程加盟 舒心早餐加盟 娘家早点车怎么加盟 早餐包子加盟 中式早点加盟
早点加盟店10大品牌 上海早点加盟店 卖早餐加盟 移动早餐加盟 早点小吃加盟网
哪家早点加盟好 早餐加盟店 早餐馅饼加盟 早点加盟车 春光早点加盟
加盟放心早点 湖北早餐加盟 上海早点 必胜客加盟费及加盟条件 健康早餐加盟
22选5中奖规则 体育快中彩 快赢481直播 福建快三预测一定牛 江西多乐彩溃
河北十一选五前三遗漏 广东快乐10分玩法 山东十一选五开奖视频 华东15选5过滤工具 3d安徽快3
广东十一选5开奖结果 pc蛋蛋幸运28计划软件 甘肃11选五前三开奖号 12098好彩1预测 时时彩平台上银狐网
双色球开奖结果今天 彩乐乐江苏快三 体彩四川金7乐玩法介绍 广东11选5开奖直播 360彩票网官网