這篇文章給大家分享的是有關Ajax原理及使用的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Ajax原理
AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),AJAX不是一種新的編程語言,而是一種用于創建更好更快以及交互性更強的 Web 應用程序的技術。它是一套綜合了多項技術的瀏覽器端網頁開發技術。這些技術包括Javascript、XHTML和CSS、DOM、XML和XMLHttpRequest。
通過在瀏覽器與服務器進行少量數據交換,AJAX 可以使網頁實現異步更新。這意味著可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。
優點:
使用Ajax的最大優點,就是能在不更新整個頁面的前提下維護數據。這使得Web應用程序更為迅捷地回應用戶動作,并避免了在網絡上發送那些沒有改變的html代碼信息。
1. 減輕服務器負擔,按需要獲得數據。
2. 無刷新更新頁面,減少用戶的實際和心理的等待時間。
3. 更好的用戶體驗。
4. 減輕寬帶的負擔。
5. 主流瀏覽器支持。
缺點:
1. AJAX大量使用了Javascript和AJAX引擎,使用AJAX的程序必須測試針對各個瀏覽器的兼容性。
2. AJAX更新頁面內容的時候并沒有刷新整個頁面,因此,網頁的后退功能是失效的。
3. 對搜索引擎支持不好。
Ajax的原理簡單來說通過瀏覽器的javascript對象XmlHttpRequest(Ajax引擎)對象來向服務器發異步請求并接收服務器的響應數據,然后用javascript來操作DOM而更新頁面。這其中最關鍵的一步就是從服務器獲得請求數據。即用戶的請求間接通過Ajax引擎發出而不是通過瀏覽器直接發出,同時Ajax引擎也接收服務器返回響應的數據,所以不會導致瀏覽器上的頁面全部刷新。
舉例:
傳統方式:瀏覽器向后端發送請求,后端響應數據給前端,瀏覽器接收數據,渲染頁面,瀏覽器要“刷新”。
Ajax方式:瀏覽器創建ajax對象,ajax對象向后端發送請求,后端接收請求響應數據給前端,ajax對象接收響應數據通過dom操作更新視圖,整個過程瀏覽器“不刷新”。
真正的請求是由Ajax引擎發出。不是由瀏覽器窗口發出,所以瀏覽器窗口是不會刷新的, Ajax引擎同時也接收服務器返回的響應內容。
Ajax引擎就是XMLHttpRequest對象,所有現代瀏覽器均支持 XMLHttpRequest 對象(IE5 和 IE6 使用 ActiveXObject)。它同是也是一個Javascript對象。
Ajax引擎(XMLHttpRequest)是Ajax綜合技術的核心,其作為瀏覽器頁面和服務器交互的一個橋梁。
通常是Javascript監聽瀏覽器網頁事件(點擊,提交,更改等),由Javascript創建Ajax引擎對象,通過Ajax引擎對象發出請求。Ajax引擎等待并且接收服務器的響應內容,Javascript再從Ajax引擎對象中獲取響應內容并且改變網頁界面顯示效果。
非IE瀏覽器和高版本的IE瀏覽器:var obj=new XMLHttpRequest();
低版本的IE瀏覽器:var obj=new ActiveXObject(“Microsoft.XMLHTTP”);
方法:
abort
取消當前請求
getAllResponseHeaders
獲取響應的所有http頭
getResponseHeader
從響應信息中獲取指定的http頭
open(方式get/post,url地址,同步異步)
創建一個新的http請求,打開請求,并指定此請求的方法、URL以及驗證信息(用戶名/密碼)
感謝各位的閱讀!關于“Ajax原理及使用的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。