疯狂Ajax讲义(第3版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1.2 传统Web应用的优势和缺点

B/S结构的应用虽然是一种非常优秀的结构,但它依然存在如下方面的不足:

独占式的请求。比如一个任务需要多步骤或多选项该任务才能完成。在HTML里,一个多步骤的任务可以在单页内表达出来。但是由于HTML的互动性有限,便可能产生一份很长的页面,使用户感到混乱、笨拙而难以使用。或者将多个步骤分成几个页面分别提交,但传统的独占式的请求,如果前一个请求没有得到完全响应,则后一个请求不能发送。用户在等待服务器的响应期间,浏览器一片空白。这种独占式请求如图1.3所示。

图1.3 独占式请求的示意图

频繁的页面刷新。传统的Web应用基本上采用请求-页面的对应模式,每个请求都需要丢弃当前页面来重新加载新页面。频繁的页面刷新不仅让客户处于不连续的体验中,也使服务器的负担加重。

简陋的页面。传统Web应用因为需要频繁刷新页面,因而不可能制作出具有丰富表现功能的页面。丰富表现的页面导致页面文件过大,下载速度更慢,而且页面频繁刷新。一个表现丰富的页面下载需要相当多的时间,但随着请求的提交,又需要重新下载新页面,这样系统开销相当大。因而传统Web应用的页面不可能非常出色。

而Ajax技术并没有提倡一种全新的应用开发结构,Ajax并不是要取代传统B/S结构应用, Ajax 技术正是为了弥补以上不足而诞生的,Ajax 使用XMLHttpRequest对象异步发送请求。Ajax 应用不采用请求对应页面的模式,发送请求不要求重新加载页面。浏览器发送请求后,无须等待服务器响应,而是可以继续原来的操作。在服务器的响应完成后,客户端使用JavaScript函数将响应数据加载到浏览器中。

通过使用Ajax技术,用户发送请求,请求得到响应这个过程在后台进行,用户的界面以连续的方式进行。