AJAX 教程
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
在应用时主要是创建XMLHttpRequest对象,调用指定服务地址。
但是IE中各个版本支持的不太一样,所以在创建次对象时可能要特殊处理下。
一般如下:
var xmlhttp = createXMLHttpRequest();
xmlhttp.open("GET","http://localhost:8080/SimpleBlog/AjaxTest",true);
xmlhttp.send(null);
xmlhttp.onreadystatechange = function(result){
if(xmlhttp.readyState==4 && xmlhttp.status == 200){
alter(result.test);
}
};
xmlhttp.open("GET","http://localhost:8080/SimpleBlog/AjaxTest",true);
xmlhttp.send(null);
xmlhttp.onreadystatechange = function(result){
if(xmlhttp.readyState==4 && xmlhttp.status == 200){
alter(result.test);
}
};
但是浏览器再执行javascript代码时,有个著名的同源策略,这使得跨域请求就不是那么方便了。
那一般都是用什么方式支持跨域呢?
1、通过中间代理服务器,获取要跨域请求的数据。
2、通过iframe内嵌带请求域的页面,来解决跨域访问问题。
3、通过jsonp方式。
4、不过现在已经提出了XMLHttpRequest Level2(XHR2)允许跨域请求,不过要在server的返回头中显示声明允许跨域请求(浏览器的支持情况:)。
下面简单说下jsonp与xtr2。
jsonp:
jsonp简单的说就是利用