一、Ajax是什么?
ajax即异步JavaScript和XML(标准通用标记语言的子集),是指一种创建交互式网页应用的网页开发技术。
二、为什么要使用ajax
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
而传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。
三、ajax步骤
-
先创建 XMLHttpRequest 对象
Ajax的核心技术就是XMLHttpRequest对象,用于与后台服务器交换数据。var xhr = new XMLHttpRequest();
-
连接服务器
open接受5个参数:要发送请求的类型(get,post),请求的url,是否异步请求(用布尔值表示,ture表示异步 ,UserName,PassWord)后两个一般不用。xhr.open("get","http://.....com",ture);
-
执行发送请求
xhr.send(null);//值为具体要发送的参数,如果是get请求就是 null
-
处理响应,接受返回。
xhr.onreadystatechage = function(){ if(xhr.readyState == 4 && xhr.status == 200) { //这里可以获取服务器返回的数据 /*readyState: 值: 状态 描述 0: UNSENT (未打开) 表示已创建 XHR 对象,open() 方法还未被调用 1:OPENED (未发送) open() 方法已被成功调用,send() 方法还未被调用 2:HEADERS_RECEIVED (已获取响应头) send() 方法已经被调用,响应头和响应状态已经返回 3:LOADING (正在下载响应体) 响应体下载中,responseText中已经获取了部分数据 4:DONE (请求完成) 整个请求过程已经完毕 xhr.status 200 表示成功 302 重定向 500 为服务端的错误等 */ } }
四、XMLHttpRequest对象的理解
ajax技术的核心是XMLHttpRequest对象。在用使用ajax技术时,其实就是操作XMLHttpRequest进行相应的业务
XMLHttpRequest 对象用于在后台与服务器交换数据。
- 在不重新加载页面的情况下更新网页
- 在页面已加载后从服务器请求数据
- 在页面已加载后从服务器接收数据
- 在后台向服务器发送数据
五、Ajax优缺点
优点:
- 不刷新页面更新数据。
可以减少用户等待时间,提升用户体验。 - 异步方式与服务器通信。
AJAX使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。 - 前端和后端负载平衡。
AJAX的原则是“按需取数据”,减少不必要的请求和响应。 - 基于标准被广泛支持。
- 前后端分离
缺点:
- AJAX中没有Back和History功能,即对浏览器机制的破坏。
在动态更新页面的情况下,用户无法回到前一个页面状态,因为浏览器仅能记忆历史记录中的静态页面。一个被完整读入的页面与一个已经被动态修改过的页面之间的差别非常微妙;用户通常会希望单击后退按钮能够取消他们的前一次操作,但是在Ajax应用程序中,这将无法实现。 - AJAX的安全问题。
AJAX技术给用户带来很好的用户体验的同时也对IT企业带来了新的安全威胁,Ajax技术就如同对企业数据建立了一个直接通道。这使得开发者在不经意间会暴露比以前更多的数据和服务器逻辑。 - 对搜索引擎支持较弱。
对搜索引擎的支持比较弱。如果使用不当,AJAX会增大网络数据的流量,从而降低整个系统的性能。 - 破坏程序的异常处理机制。
- AJAX不能很好支持移动设备。
网友评论