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多久一期 北京pk10冠军技巧大全
pk10冠军技巧5码公式 北京pk10冠亚军技巧 上海时时乐哪里有卖 北京pk10开奖记录官网 北京赛车pk10投注网站
北京pk10冠军技巧 pk10冠军技巧5码公式 北京pk10冠亚军技巧 北京pk10猜冠军技巧 pk10冠军技巧5码公式
时时乐开奖走势图 北京快乐8预测 北京赛车pk10经验论坛 上海时时乐开奖彩票控
北京早点 早点加盟小吃 双合成早餐加盟 油条早餐加盟 早餐加盟哪家好
早餐店 加盟 书店加盟 黑龙江早餐加盟 中式早餐加盟 早餐豆腐脑加盟
早点加盟品牌 健康早餐加盟 包子早点加盟 山东早餐加盟 加盟放心早点
北京早点车加盟 范征早餐加盟 早餐项目加盟 早餐加盟好项目 河南早点加盟
黑龙江36选7开奖结果 江苏快3预测 六合图库大全 新疆十一选五开奖结果 01和11是不是连码
广东十一选五一定牛 江苏体育彩票11选五 内蒙古福彩快三 中国彩吧更懂彩民 11选5任四包赚不赔40注
十一选五有喝吗 上海快3直播 十一选五开奖结果 浙江6十1走势图 香港赛马会单双中特
白小姐论坛 pk10走势 云南十一选五走势图 上海快三开奖爱彩乐 云南快乐十分前三组