Ajax(Asynchronous JavaScript and XML)是網頁中用來與伺服器達成非同步互動行為的機制,一般以jQuery based所架構,
傳輸的格式為XML,最常見使用的Ajax函式庫如JSON(JavaScript Object Notation)。
Ajax是一些技術的整合應用,包含HTML, CSS, DOM, JavaScript, XMLHttpRequest等以達到動態顯示資料,避免使用者在資料切換時必須重新整理整個頁面。
jQuery是一個小而美且快速的JavaScript函式庫。
在各種瀏覽器上,以一個使用方便的API讓網頁上的資料互動、事件處理、Ajax操作更簡單。
基於多元、擴充的組合,jQuery已經顛覆了技術人員開發JavaScript的習慣。
JSON是一個輕量級的資料交換格式,也很容易方便去人與機器讀寫,是基於JavaScript的程式語言。
JSON為文字格式但完全與程式獨立,但採用一些常見語言規則,包含C, C++, C#, Java, JavaScript, Perl, Python等。
這些特點讓JSON成為理想的資料交換語言。
Ajax運作模式
-
傳統的Web應用允許用戶端填寫表單(form),當送出表單時就向Web伺服器發送一個請求。
伺服器接收並處理傳來的表單,然後送回一個新的網頁,但這個做法浪費了許多頻寬,因為在前後兩個頁面中的大部分HTML碼往往是相同的。
-
由於每次應用的溝通都需要向伺服器發送請求,應用的回應時間就依賴於伺服器的回應時間。這導致了使用者介面的回應比本機應用慢得多。
與此不同,Ajax應用可以僅向伺服器發送並取回必需的資料,它使用SOAP或其它一些基於XML的頁面服務介面並在客戶端採用JavaScript處理來自伺服器的回應。
-
因為在伺服器和瀏覽器之間交換的資料大量減少(大約只有原來的5%),結果我們就能看到回應(伺服器回應)更快的應用(結果)。
同時很多的處理工作可以在發出請求的客戶端機器上完成,所以Web伺服器的處理時間也減少了。
Asynchronous JavaScript and XML, Ajax、ICEFaces、ExtJS、DWR、ZK、ExtGwt、jQuery、DOM、Pojo、JSON
|