AJAX(Asynchronous JavaScript and XML(异步的JavaScript 和 XML))。AJAX不是新的编程语言,而是一种使用现有标准的新方法。AJAX是与服务器交换数据并在不重新加载整个页面的情况下实现更新部分网页的艺术。传统的页面(不使用AJAX)如果更新内容,必须重新加载整个页面。
AJAX工作原理:
1、XMLHttpRequest 对象(异步的与服务器交换数据)
2、JavaScript/DOM(信息显示交互)
3、CSS(给数据定义样式)
4、XML(作为转换数据的格式)
AJAX应用程序与浏览器和平台无关。
完整的HTTP请求 7个步骤
1、建立TCP连接
2、Web浏览器向Web服务器发送请求命令
3、Web浏览器发送请求头信息
4、Web服务器应答
5、Web服务器发送应答头信息
6、Web服务器想浏览器发送数据
7、Web服务器关闭TCP连接
完整的HTTP请求4个部分
1、HTTP请求的方法或动作,GET/POST
2、正在请求的URL,即请求的地址
3、请求头,包含一些客户端环境信息,身份验证信息等
4、请求体,也就是请求正文,请求正文可以包含客户提交的查询字符串信息,表单信息等等
HTTP请求中GET与POST的区别
GET: 一般用于信息的获取,使用URL传递参数,对发送信息的数量也有限制,一般在2000个字符
POST: 一般用于修改服务器上的资源,对所发送的信息的数量无限制。
XMLHttpRequest发送请求
open(method,url,async) method发送请求的方式get/post,url请求的地址,async请求同步/异步默认true异步
send(string)
原生JavaScript操作AJAX
1、创建XMLHttpRequest对象
var shr = new XMLHttpRequest(); //ie5/ie6 xhr = ActiveXObject("Microsoft.XMLHTTP")
2、打开链接
xhr .open(method,url,sndyn);
3、发送数据
xhr.send();
4、获取数据,渲染页面
xhr.onreadystatechange = function(){
if(xhr.status == 200 && xhr.readyState == 4){
//do something
}
}
JQuery操作AJAX方法
1、最底层:$.ajax({
type:"get/post",
url:"路径",
dataType:"xml/html/text/json/jsonp……",
date:{},
success:function(res,statusT,xhr){
返回的结果
},
error:function(){
}
});
$.ajax({url}).done(fn).fail(fn);
2、二层
$.get(url,[data],[fn],[dataType])
$.post(url,[data],[fn],[dataType])
jquery对象.load(url,[data],[fn])
3、最高层
$.getJSON(url,[data],[fn])
$.getSCRIPT(url,[fn])
JAVA跨域案例