Ajax是一種用來改善用戶體驗的技術(shù),其實質(zhì)是利用瀏覽器內(nèi)置的一個特殊的對象異步地向服務器發(fā)送請求, 服務器送回部分數(shù)據(jù),利用這些數(shù)據(jù)更新當前頁面。整個過程,頁面無刷新,不打斷用戶的操作。其工作原理是什么呢?讓粵嵌廣州Java培訓為大家講解 一下。
AJAX 指異步JavaScript 及XML(Asynchronous JavaScript And XML),是一種創(chuàng)建交互式網(wǎng)頁應用的網(wǎng)頁開發(fā)技術(shù)。
傳統(tǒng)的Web應用允許用戶填寫表單(form),當提交表單時就向Web服務器發(fā)送一個請求。服務器接收并處理傳來的表單,然后返回一個新的網(wǎng)頁。這個做法浪費了許多帶寬,因為在前后兩個頁面中的大部分html代碼往往是相同的。由于每次應用的交互都需要向服務器發(fā)送請求,應用的響應時間就依賴于服務器的響應時間,這導致了用戶界面的響應比本地應用慢得多。
與此不同,AJAX應用可以僅向服務器發(fā)送并取回必需的數(shù)據(jù),它使用SOAP或其它一些基于XML的web service接口,并在客戶端采用JavaScript處理來自服務器的響應。因此在服務器和瀏覽器之間交換的數(shù)據(jù)大量減少,結(jié)果我們就能看到響應更快的應用。同時很多的處理工作可以在發(fā)出請求的客戶端機器上完成,所以Web服務器的處理時間也減少了。
使用Ajax的優(yōu)點,就是能在不更新整個頁面的前提下維護數(shù)據(jù)。這使得Web應用程序更為迅捷地回應用戶動作,并避免了在網(wǎng)絡(luò)上發(fā)送那些沒有改變過的信息。
AJAX 在瀏覽器與Web服務器之間使用異步數(shù)據(jù)傳輸(HTTP 請求),這樣就可使網(wǎng)頁從服務器請求少量的信息,而不是整個頁面。
Ajax的工作原理相當于在用戶和服務器之間加了—個中間層(AJAX引擎),使用戶操作與服務器響應異步化。并不是所有的用戶請求都提交給服務器,像—些數(shù)據(jù)驗證和數(shù)據(jù)處理等都交給Ajax引擎自己來做, 只有確定需要從服務器讀取新數(shù)據(jù)時再由Ajax引擎代為向服務器提交請求。
工作原理一般分為如下由步:
getXMLHTTPRequest();//得到XMLHTTPRequest對象;
callAjax();//可以做數(shù)據(jù)傳遞以及處理操作;
responseAjax();//服務器反應;
在頁面中調(diào)用callAjax()。
這樣,當用戶還在頁面上操作時,他輸入或者修改的值就會通過我們的異步請求傳遞給服務器,并在頁面同時完成修改操作,達到不刷新修改頁面的效果。
現(xiàn)在大家對AJAX的工作原理是否有個比較清晰的認識呢?如果還不了解,歡迎咨詢粵嵌官網(wǎng),報名廣州Java培訓班,讓你全面掌握Java技術(shù)。