AJAX 簡介

AJAX全稱爲「Asynchronous JavaScript and XML」(異步JavaScript和 XML ),是指一種建立交互式網頁應用的網頁開發技術。
主要包含了如下幾種技術:
Ajax(Asynchronous JavaScript + XML)的定義
相似於DHTML或LAMP,AJAX不是指一種單一的技術,而是有機地利用了一系列相關的技術。事實上,一些基於AJAX的「派生/合成」式(derivative/composite)的技術正在出現,如「AFLAX」。
AJAX的應用使用支持以上技術的web瀏覽器做爲運行平臺。這些瀏覽器目前包括: Mozilla Firefox Internet Explorer Opera Konqueror Safari 。可是Opera不支持XSL格式對象,也不支持XSLT。 [1]
Ajax的工做原理至關於在用戶和服務器之間加了—箇中間層,使用戶操做與服務器響應異步化。並非全部的用戶請求都提交給服務器,像—些數據驗證和數據處理等都交給Ajax引擎本身來作,只有肯定須要從服務器讀取新數據時再由Ajax引擎代爲向服務器提交請求。

與傳統的web應用比較

傳統的web應用容許用戶填寫表單(form),當提交表單時就向web服務器發送一個請求。服務器接收並處理傳來的表單,然後返回一個新的網頁。這個作法浪費了許多帶寬,由於在前後兩個頁面中的大部分HTML代碼每每是相同的。因爲每次應用的交互都須要向服務器發送請求,應用的響應時間就依賴於服務器的響應時間。這致使了用戶界面的響應比本地應用慢得多。
與此不一樣,AJAX應用能夠僅向服務器發送並取回必需的數據,它使用 SOAP 或其它一些基於XML的web service接口,並在客戶端採用JavaScript處理來自服務器的響應。由於在服務器和瀏覽器之間交換的數據大量減小,結果咱們就能看到響應更快的應用。同時不少的處理工做能夠在發出請求的客戶端機器上完成,因此Web服務器的處理時間也減小了。
ajax-fig1_small.png
傳統web應用與AJAX應用的比較:處理用戶交互
ajax-fig2_small.png
---------------以上來自: [url]http://blog.chinaunix.net/u/8780/showart_282680.html[/url]   ---------------
 
什麼是AJAX
AJAX全稱爲「Asynchronous JavaScript and XML」(異步JavaScript和XML),是指一種建立交互式網頁應用的網頁開發技術。

主要包含了如下幾種技術:

Ajax(Asynchronous JavaScript + XML)的定義

基於web標準(standards-based presentation)XHTML+CSS的表示;

使用 DOM(Document Object Model)進行動態顯示及交互;

使用 XML 和 XSLT 進行數據交換及相關操做;

使用 XMLHttpRequest 進行異步數據查詢、檢索;

使用 JavaScript 將全部的東西綁定在一塊兒。
英文 參見Ajax的提出者Jesse James Garrett的原文a

相似於DHTML或LAMP,AJAX不是指一種單一的技術,而是有機地利用了一系列相關的技術。事實上,一些基於AJAX的「派生/合成」式(derivative/composite)的技術正在出現,如「AFLAX」。

AJAX的應用使用支持以上技術的web瀏覽器做爲運行平臺。這些瀏覽器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。可是Opera不支持XSL格式對象,也不支持XSLT。

與傳統的web應用比較

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

與此不一樣,AJAX應用能夠僅向服務器發送並取回必需的數據,它使用SOAP或其它一些基於XML的web service接口,並在客戶端採用JavaScript處理來自服務器的響應。由於在服務器和瀏覽器之間交換的數據大量減小,結果咱們就能看到響應更快的應用。同時不少的處理工做能夠在發出請求的客戶端機器上完成,因此Web服務器的處理時間也減小了。

Ajax應用程序的優點在於:

1. 經過異步模式,提高了用戶體驗

2. 優化了
瀏覽器 和服務器之間的傳輸,減小沒必要要的數據往返,減小了帶寬佔用

3. Ajax引擎在客戶端運行,承擔了一部分原本由服務器承擔的工做,從而減小了大用戶量下的服務器負載。

Ajax的工做原理

  Ajax的核心是JavaScript對象XmlHttpRequest。該對象在Internet Explorer 5中首次引入,它是一種支持異步請求的技術。簡而言之,XmlHttpRequest使您可使用JavaScript向服務器提出請求並處理響應,而不阻塞用戶。

  在建立Web站點時,在客戶端執行屏幕更新爲用戶提供了很大的靈活性。下面是使用Ajax能夠完成的功能:

    動態更新購物車的物品總數,無需用戶單擊Update並等待服務器從新發送整個頁面。

    提高站點的性能,這是經過減小從服務器下載的數據量而實現的。例如,在某購物車頁面,當更新籃子中的一項物品的數量時,會從新載入整個頁面,這必須下載整個頁面的數據。若是使用Ajax計算新的總量,服務器只會返回新的總量值,所以所需的帶寬僅爲原來的百分之一。 消除了每次用戶輸入時的頁面刷新。例如,在Ajax中,若是用戶在分頁列表上單擊Next,則服務器數據只刷新列表而不是整個頁面。
直接編輯表格數據,而不是要求用戶導航到新的頁面來編輯數據。對於Ajax,當用戶單擊Edit時,能夠將靜態表格刷新爲內容可編輯的表格。用戶單擊Done以後,就能夠發出一個Ajax請求來更新服務器,並刷新表格,使其包含靜態、只讀的數據。

  一切皆有可能!希望它可以激發您開始開發本身的基於Ajax的站點。然而,在開始以前,讓咱們介紹一個現有的Web站點,它遵循傳統的提交/等待/從新顯示的範例,咱們還將討論Ajax如何提高用戶體驗。

   Ajax的工做原理至關於在用戶和服務器之間加了—箇中間層,使用戶操做與服務器響應異步化。這樣把之前的一些服務器負擔的工做轉嫁到客戶端,利於客戶端閒置的處理能力來處理,減輕服務器和帶寬的負擔,從而達到節約ISP的空間及帶寬租用成本的目的。

-------------以上資料轉自Baidu:
[url]http://baike.baidu.com/view/1641.htm[/url]    ---------------
 
什麼是AFLAX?
AFLAX: A JavaScript Library for Macromedia's Flash™ PlatformAFLAX是基於AJAX的「派生/合成」式(derivative/composite)技術。比較大路的說法是(AJAX - Javascript + Flash)。
相關文章
相關標籤/搜索