AJAX Asynchronous Javascript and xml

网页数据的局部更新和交互;数据可以局部刷新,Javascript是单线程的,因此在等待请求过程中,浏览器会停止响应,而xmlHttpRequest天生就具备异步处理请求的能力。

所谓异步处理就是当前的线程发出请求后,调用会立即返回,当前线程就可以做其他事情了,一旦请求的数据处理完毕,将主动通知当前线程再来处理。这样,浏览器便不会出现长时间停止响应的情况了。

所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject)。

XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

XMLHttpRequest可以在不中断其他浏览任务的情况下身服务器发送数据;

Ajax只是一种无需刷新页面即可从服务器(或客户端)上加载数据的手段。这些数据的形式可以是多种,而且,当数据到达时也有很多处理它们的方法可供选择。

 

传统的web执行模式(同步) 基于Ajax的开发模式(异步)
同步:一件一件按顺序进行; 异步:同时做;
页面全部刷新 页面局部刷新;(通过DOM来局部修改页面而不是整体功能)
请求→刷新→显示(页面) web页面可以从多个接口获取数据
串行请求:用户发出一个请求,只有等请求处理完毕,用户才能进行下一步的操作; 并行请求:下一个请求不用等待前一个请求;

涉及到的技术

JS,XHTML,CSS,DOM,SML,XSTL;

XMLHTTPRequest对象:浏览器和服务器异步数据读取;

工作过程

1 对象的初始化,主要是创建XMLHttpRequest对象(负责设置,发送)

2 发送请求,设置响应方法,请求所需数据,然后发送请求;

3 服务器接收请求并处理,通常由servlet接受请求,然后调用相应的业务方法来处理,之后对用户响应;

4 客户端响应;

5 响应方法根据响应数据修改客户端内容;

AJAX:Asynchronous JavaScript and XML

  1. AJAX在不发生页面跳转,异步载入内容并改写页面内容的技术;对于同步处理来说,在处理完来自服务器的响应之前,用户无法进行任何其他操作,只能等待。
  2. 使用Javascript向服务器提出请求并处理响应而不阻塞用户!核心对象XMLHTTPRequest。通过这个对象,您的 JavaScript 可在不重载页面的情况与Web服务器交换数据。
    AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。
  3. 网页数据的局部更新和交互;数据可以局部刷新,Javascript是单线程的,因此在等待请求过程中,浏览器会停止响应,而xmlHttpRequest天生就具备异步处理请求的能力。 所谓异步处理就是当前的线程发出请求后,调用会立即返回,当前线程就可以做其他事情了,一旦请求的数据处理完毕,将主动通知当前线程再来处理。这样,浏览器便不会出现长时间停止响应的情况了。
  • AJAX:页面中用户的操作将通过AJAX引擎与服务器端进行通信,然后将返回结果提交给客户端页面的AJAX引擎,再由AJAX引擎来决定将这些数据插入页面的指定位置;

    AJAX使用XML HttpRequest对象发送请求并得到服务器响应,在不需要重新载入整个页面的情况下,就可以通过DOM及时将更新的内容显示在页面上。

    AJAX把服务器的角色由原本传输内容转变为传输数据,而数据格式则可以是纯文本格式和XML格式;

  • XML:描述数据的结构,以数据为中心的标记语言,存储数据。(HTML:格式化数据)