AJAX技術

1.簡介

AJAXAsynchronous JavaScript and XML)是一種位於客戶端的技術,能將客戶端由原來的不刷新終端加強成智能化的富客戶端,它利用異步方式訪問服務器,實現無刷新更新網頁,該技術的應用大大降低了客戶端延遲,提高了Web應用程序執行效率。

AJAX使用DOM(Document Object Model)進行動態顯示及交互;使用XMLXSLT進行數據交換及相關操作;使用XMLHttpRequest進行異步數據查詢、檢索;使用JavaScript將所有的東西綁定在一起。類似於DHTMLAJAX不是指一種單一的技術,而是有機地利用了一系列相關的技術。事實上,一些基於AJAX的“派生/合成”式的技術,如“AFLAX”。

2.優點

傳統的Web應用允許用戶填寫表單(form),當提交表單時就向Web服務器發送一個請求。服務器接收並處理傳來的表單,然後返回一個新的網頁。這個做法浪費了許多帶寬,因爲在前後兩個頁面中的大部分HTML代碼往往是相同的。由於每次應用的交互都需要向服務器發送請求,應用的響應時間就依賴於服務器的響應時間。這導致了用戶界面的響應比本地應用慢得多。

與此不同,AJAX應用可以僅向服務器發送並取回必需的數據,它使用SOAP或其它一些基於XMLWeb service接口,並在客戶端採用JavaScript處理來自服務器的響應。因爲在服務器和瀏覽器之間交換的數據大量減少,所以我們能看到響應更快的應用,同時很多的處理工作可以在發出請求的客戶端機器上完成,所以Web服務器的處理時間也減少了。

AJAX應用程序的優勢在於:

a. 通過異步模式,提升了用戶體驗;優化了瀏覽器和服務器之間的傳輸,減少了不必要的數據往返,減少了帶寬佔用;

b. AJAX引擎在客戶端運行,承擔了一部分本來由服務器承擔的工作,從而減少了大用戶量下的服務器負載。

3.對AJAX的瞭解

    AJAX的核心是JavaScript對象XmlHttpRequest。簡而言之,XmlHttpRequest使用JavaScript向服務器提出請求並處理響應,而不阻塞用戶。在創建Web站點時,在客戶端執行屏幕更新爲用戶提供了很大的靈活性。與傳統的Web應用不同,AJAX技術使用XMLHttpRequest對象提供與服務器異步通信的能力。當客戶端的用戶操作觸發XMLHttpRequest對象後,客戶端向服務器發送一個異步請求。方法非常迅速地返回,只會將客戶端用戶界面阻塞很短的時間。如果服務器端處理好客戶端請求,則向客戶端發送響應數據。客戶端通過一個回調函數解析來自服務器的響應,並根據響應數據更新用戶界面。

4.AJAX的技術特徵

    AJAX主要技術特徵是:

a. 應用XHTMLCSS標準化;

b. 使用DOM實現動態顯示和交互;

c. 採用XMLXSLT進行數據交換與處理;

d. XMLHttpRequest實現異步數據讀取;

e. 用JavaScript綁定和處理所有數據,其中最主要的功能是將客戶端和服務器間的同步通信改爲異步通信交互,將客戶端加強爲“富客戶端”。解決了瀏覽器等待數據傳輸的問題,改善了用戶體驗,使用戶可以快速得到Web服務器的數據。

AJAX應用中,服務器並不直接生成用戶顯示的HTML代碼,而是將處理的結果返回到客戶端之後經過JavaScript進行處理,通過DOM模型或者其它途徑顯示。對於服務器端來說主要是實現業務邏輯,將處理後的結果返回到客戶端,而不再負責生成表示邏輯的代碼。服務器返回數據的格式由服務器和客戶端表示邏輯共同協商,常用的格式有XMLJSON對象、HTML片段等。

5.其他

對於AJAX模式下服務端,由於服務器端主要功能是接受請求參數,返回格式化的文本數據,因此服務器端的技術並不重要,一個團隊可以採用多種熟悉的服務端技術開發,在這個層次上可以更好地劃分開發的表示邏輯和業務邏輯,以便於提高團隊的開發效率,因此很容易開發出一個表示邏輯運行在Linux平臺,而業務邏輯運行於Windows平臺的Web應用,可有效地支持分佈式垮平臺應用的開發。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章