关于Ajax

Ajax是无需刷新页面就能从服务器获取数据的一种方法。

首先,负责Ajax运作的核心对象是XMLHttpRequest(XHR)对象,虽可能存在实现差异,但是XHR对象的基本用法在各浏览器间还是相对规范的,因此可以放心使用;

XHR为通信设置了“相同的域,相同的端口,相同的协议”这一限制,只能实现同源通信,否则会引发安全错误。

Ajax跨域:CORS(跨源资源共享)定义了在访问跨源资源时,浏览器与服务器端的沟通方式。它的思想是使用自定义的HTTP头部让浏览器与服务器进行沟通。

CORS的实现:IE中引入了XDR类型,与XHR类似,但是可以实现跨域通信;其它浏览器都实现了通过XHR对CORS的原生支持。

CORS通过Preflighted Request的透明服务器验证机制支持开发人员使用自定义的头部、GET或POST之外的方法,以及不同类型的主体内容。

Ajax还可以通过使用<img>标签、JSONP等方式实现跨域通信。

img实现跨域方式是在线广告跟踪浏览量的主要方式,以下是通过<img>实现的例子:

var Img=new Image();

img.οnlοad=img.οnerrοr=function(){

alert("OK");

}

img.src="http://www.em.com/work";

JSONP是通过动态<script>元素来使用的,使用时可以为src属性指定一个跨域URL。

eg.function Response(response){

alert(response.ip+"   "+response.city);

}

var script=document.createElement("script");

script.src="http://em.com/json/";

document.body.insertBefore(script,document.body.firstChild);

Ajax是一个非常庞大的主题,还需要我们更多深入地研究。。。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值