Ajax是什么
Ajax 的全称是asynchronous javascript and xml
从全称不难发现AJAX = 异步,JavaScript 和 XML。
Ajax 并不算是一种新的技术,而是已有技术的组合,主要用来实现客户端与服务器端的异步通信效果,实现页面的局部刷新。
为什么需要Ajax
在没有使用Ajax情况下:Web站点强制用户进入提交/等待/重新显示(重新加载整个网页),对于服务器加大了流量,对于用户每一次与服务器传递数据都会重新加载整个网页。
使用Ajax情况下:通过在后台与服务器进行少量数据交换,AJAX 使用JavaScript和DHTML立即更新UI(部分刷新),这对用户有利,因为它不会干扰或中断他或她正在使用的网页。
小提示:
- DHTML 是一种创建动态和交互 WEB 站点的技术集简单说就是HTML、CSS和 JavaScript 的组合
- JavaScript 不是唯一使用 AJAX 编程的客户端脚本语言; VBScript 和其他语言都有这种功能,但 JavaScript 是最受欢迎的。
Ajax 的过程
- 创建 XMLHttpRequest 对象,也就是创建一个异步调用对象
- 创建一个新的 HTTP 请求,并指定该 HTTP 请求的方法、URL 及验证信息
- 设置响应 HTTP 请求状态变化的函数
- 发送 HTTP 请求
- 获取异步调用返回的数据
- 使用 JavaScript 和 DOM 实现局部刷新
Ajax 的优点和缺点
优点
- 实现异步通信效果
- 实现页面局部刷新
- 带来更好的用户体验
- 按需获取数据
- 节约带宽资源
缺点
- ajax 不支持浏览器 back 按钮
- 安全问题 AJAX 暴露了与服务器交互的细节
- 对搜索引擎的支持比较弱
- 破坏了程序的异常机制