一、什么是ajax
Ajax即Asynchronous Javascript And XML(异步JavaScript和XML)。
ajax不是新的编程语言,而是一种使用现有标准的新方法。
ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
ajax是一种用于创建快速动态网页的技术。
Ajax是对原生XHR的封装,为了达到我们跨越的目的,增添了对JsonP的支持。
异步的 javascript和 xml,ajax不是一门新技术,而是多种技术的组合,用于快速的创建动态页面,能够实现无刷新更新数据从而提高用户体验。
二、ajax的原理
1.客户端发送请求,请求交给Ajax,Ajax把请求提交给服务器,服务器进行业务处理,服务器响应数据交给Ajax对象,Ajax对象接收数据,由JavaScript把数据写到页面上。
三、ajax的优点:
1、无刷新更新数据,用户的体验非常好。
2、异步与服务器通信,具有更加迅速的响应能力。
3、前端和后端负载平衡。
可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。
4、基于标准被广泛支持,不需要下载插件或者小程序。
5、界面与应用分离
6.ajax可使因特网应用程序更小、更快,更友好。
四、ajax的缺点:
1、ajax不能使用Back和history功能,即对浏览器机制的破坏
2、安全问题 AJAX暴露了与服务器交互的细节。
3、对搜索引擎的支持比较弱。
4、不容易调试。
5、ajax不能使用Back和history功能,即对浏览器机制的破坏
6、破坏了程序的异常机制。
7、违背URL和资源定位的初衷
8、ajax不能很好的支持移动设备
9、太多客户端代码造成开发上的成本
五、ajax请求的五个步骤
1、创建XMLHttpRequest异步对象
2、设置回调函数
3、使用open方法与服务器建立连接
4、向服务器发送数据
5、在回调函数中针对不同的响应状态进行处理
六 ajax的基本语法
<script type="text/javascript">
// 1.创建ajax对象
var xhr = new XMLHttpRequest();
// 2.告诉Ajax对象要向哪发送请求,以什么方式发送请求
// 1)请求方式 2)请求地址
xhr.open('get', 'http://localhost:3000/first');
// 3.发送请求
xhr.send();
// 4.获取服务器端响应到客户端的数据
xhr.onload = function (){
console.log(xhr.responseText)
}
</script>