Ajax內部交流文檔一、使用Ajax的主要原因
1、通過適當的Ajax應用達到更好的用戶體驗;
2、把以前的一些服務器負擔的工作轉嫁到客戶端,利于客戶端閑置的處理能力來處理,減輕服務器和帶寬的負擔,從而達到節約ISP的空間及帶寬租用成本的目的。
二、引用
Ajax這個概念的最早提出者Jesse James Garrett認為:
Ajax是Asynchronous JavaScript and XML的縮寫。
Ajax并不是一門新的語言或技術,它實際上是幾項技術按一定的方式組合在一在同共的協作中發揮各自的作用,它包括
使用XHTML和CSS標準化呈現;
使用DOM實現動態顯示和交互;
使用XML和XSLT進行數據交換與處理;
使用XMLHttpRequest進行異步數據讀取;
最后用JavaScript綁定和處理所有數據;
Ajax的工作原理相當于在用戶和服務器之間加了—個中間層,使用戶操作與服務器響應異步化。
并不是所有的用戶請求都提交給服務器,像—些數據驗證和數據處理等都交給Ajax引擎自己來做,
只有確定需要從服務器讀取新數據時再由Ajax引擎代為向服務器提交請求。
三、概述
雖然Garrent列出了7條Ajax的構成技術,但個人認為,所謂的Ajax其核心只有JavaScript、XMLHTTPRequest和DOM,
如果所用數據格式為XML的話,還可以再加上XML這一項(Ajax從服務器端返回的數據可以是XML格式,也可以是文本等其他格式)。
在舊的交互方式中,由用戶觸發一個HTTP請求到服務器,服務器對其進行處理后再返回一個新的HTHL頁到客戶端,
每當服務器處理客戶端提交的請求時,客戶都只能空閑等待,并且哪怕只是一次很小的交互、
只需從服務器端得到很簡單的一個數據,都要返回一個完整的HTML頁,而用戶每次都要浪費時間和帶寬去重新讀取整個頁面。
而使用Ajax后用戶從感覺上幾乎所有的操作都會很快響應沒有頁面重載(白屏)的等待。
1、XMLHTTPRequest
Ajax的一個最大的特點是無需刷新頁面便可向服務器傳輸或讀寫數據(又稱無刷新更新頁面),
這一特點主要得益于XMLHTTP組件XMLHTTPRequest對象。這樣就可以向再發桌面應用程序只同服務器進行數據層面的交換,
而不用每次都刷新界面也不用每次將數據處理的工作提交給服務器來做,
這樣即減輕了服務器的負擔又加快了響應速度、縮短了用戶等候時間。
最早應用XMLHTTP的是微軟,IE(IE5以上)通過允許開發人員在Web頁面內部使用XMLHTTP ActiveX組件擴展自身的功能,
開發人員可以不用從當前的Web頁面導航而直接傳輸數據到服務器上或者從服務器取數據。