一 简介
AJAX(Asynchronous Javascript And XML),即AJAX = 异步JavaScript + XML。AJAX是一种用于建立快速动态网页的技术。
浏览器
AJAX两大特色:服务器
- 与服务器异步交互
- 浏览器页面局部刷新:在不从新加载整个网页的状况下,对网页的某部分进行刷新。
同步交互和异步交互:异步
同步交互:客户端发送一个请求后,须要等待服务端响应结束后才能发送第二个请求;函数
异步交互:客户端发送一个请求后,无需等待服务端响应结束就能够发送第二个请求。性能
二 AJAX优缺点
优势:spa
- AJAX使用JavaScript技术向服务器发送异步请求
- AJAX无须刷新整个浏览器页面,即可实现局部刷新
- 相比刷新整个页面,AJAX局部刷新性能更高
缺点:xml
- AJAX并不适用于全部场景,有些时候仍是须要用到同步交互
- AJAX虽然提升了用户体验,但无形中向服务器发送的请求增长来,致使服务器压力增大
- AJAX经过JavaScript技术实现,须要解决不一样浏览器之间的兼容性问题
三 AJAX工做原理
四步操做:对象
- 建立核心对象;
- 使用核心对象打开与服务器的链接;
- 发送请求
- 注册监听,监听服务器响应。
XMLHttpRequest:blog
- open(请求方式, URL, 是否异步)
- send(请求体)
- onreadystatechange,指定监听函数,它会在xmlHttp对象的状态发生变化时被调用
- readyState,当前xmlHttp对象的状态,其中4状态表示服务器响应结束
- status:服务器响应的状态码,只有服务器响应结束时才有这个东东,200表示响应成功;
- responseText:获取服务器的响应体
