AJAX技术

前几天试用了 live mail ,简洁的风格和快速的页面执行一下吸引了我
 
这种快速的页面正是引用了AJAX技术,回想原先试用的GMAIL和163邮箱都是用这种技术的,前几天刚出来的QQMAIL也是………… 随的AJAX在LIVE mail的应用,充份证实了AJAX在当今WEB服务的技术霸主地位。下面引用一侧段AJAX的介绍:
 
      在使用浏览器浏览网页的时候,当页面刷新很慢的时候,你的浏览器在干什么?你的屏
幕内容是什么?是的,你的浏览器在等待刷新,而你的屏幕内容是一片空白,而你在屏幕前
苦苦的等待浏览器的响应。开发人员为了克服这种尴尬的局面,不得不在每一个可能需要长
时间等待响应的页面上增加一个DIV,告诉用户“系统正在处理您的请求,请稍候……”。
现在,有一种越来越流行越热的“老”技术,可以彻底改变这种窘迫的局面。那就是
AJAX。如今,随着Gmail、Google-maps 的应用和各种浏览器的支持,AJAX 正逐渐吸引全
世界的眼球。


一、AJAX 定义
AJAX(Asynchronous JavaScript and XML)其实是多种技术的综合,包括Javascript、
XHTML 和CSS、DOM、XML 和XSTL、XMLHttpRequest。其中:
使用XHTML 和CSS 标准化呈现,使用DOM 实现动态显示和交互,使用XML 和XSTL 进
行数据交换与处理,使用XMLHttpRequest 对象进行异步数据读取,使用Javascript 绑定和
处理所有数据。
在AJAX 提出之前,业界对于上述技术都只是单独的使用,没有综合使用,也是由于
之前的技术需求所决定的。随着应用的广泛,AJAX 也成为香饽饽了。
二、现状与需要解决的问题
传统的Web 应用采用同步交互过程,这种情况下,用户首先向HTTP 服务器触发一个
行为或请求的呼求。反过来,服务器执行某些任务,再向发出请求的用户返回一个HTML
页面。这是一种不连贯的用户体验,服务器在处理请求的时候,用户多数时间处于等待的状
态,屏幕内容也是一片空白。
三、为什么使用AJAX
与传统的Web 应用不同,AJAX 采用异步交互过程。AJAX 在用户与服务器之间引入一
个中间媒介,从而消除了网络交互过程中的处理—等待—处理—等待缺点。用户的浏览器在
执行任务时即装载了AJAX 引擎。AJAX 引擎用JavaScript 语言编写,通常藏在一个隐藏的
框架中。它负责编译用户界面及与服务器之间的交互。AJAX 引擎允许用户与应用软件之间
的交互过程异步进行,独立于用户与网络服务器间的交流。现在,可以用Javascript 调用AJAX
引擎来代替产生一个HTTP 的用户动作,内存中的数据编辑、页面导航、数据校验这些不需
要重新载入整个页面的需求可以交给AJAX 来执行。
使用AJAX,可以为ISP、开发人员、终端用户带来可见的便捷:
􀁺 减轻服务器的负担。AJAX 的原则是“按需取数据”,可以最大程度的减少冗余请求,
和响应对服务器造成的负担。
􀁺 无刷新更新页面,减少用户心理和实际的等待时间。特别的,当要读取大量的数据的时
候,不用像Reload 那样出现白屏的情况,AJAX 使用XMLHTTP 对象发送请求并得到
服务器响应,在不重新载入整个页面的情况下用Javascript 操作DOM 最终更新页面。
所以在读取数据的过程中,用户所面对的不是白屏,是原来的页面内容(也可以加一个
Loading 的提示框让用户知道处于读取数据过程),只有当数据接收完毕之后才更新相
应部分的内容。这种更新是瞬间的,用户几乎感觉不到。
􀁺 带来更好的用户体验。
􀁺 可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻
服务器和带宽的负担,节约空间和宽带租用成本。
􀁺 可以调用外部数据。
􀁺 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。
􀁺 进一步促进页面呈现和数据的分离。


我原来的BOLG http://spaces.msn.com/gaolcn

posted on 2006-03-22 15:38  ginseng  阅读(600)  评论(3编辑  收藏  举报

导航