1. 程式人生 > >AJAX入門學習-1:理解ajax

AJAX入門學習-1:理解ajax

兼容性 體驗 專用 end 這就是 ext 被調用 stat 交互

小生博客:http://xsboke.blog.51cto.com

如果有疑問,請點擊此處,然後發表評論交流,作者會及時回復。

                        -------謝謝您的參考,如有疑問,歡迎交流

一. 什麽是ajax

    ajax:asynchronous javascript and xml,異步javascript和xml,即使用javascript語言與服務器進行異步交互,傳輸的數據庫為
    xml(當然,傳輸數據的不只是xml)

    ajax還有一個最大的特點就是,當服務器響應時,不用刷新整個瀏覽器頁面,而是可以局部刷新,這一特點給用戶的感受是在
    不知不覺中完成請求和響應過程

    - 與服務器異步交互
    - 瀏覽器頁面局部刷新

二. 同步交互與異步交互

    - 同步交互:客戶端發出一個請求後,需要等待服務器響應結束後,才能發出第二個請求
    - 異步交互:客戶端發出一個請求後,無等待服務器響應結束後,就可以發出第二個請求

三. 局部刷新

    比如百度的搜索框,輸入一個字,百度會自動聯想你想搜索的東西,這時候頁面並沒有刷新,這就是局部刷新
    比如,在某些網站註冊用戶時,會提示用戶名被占用,這是因為當你輸入完,焦點移出輸入框時,就會從數據庫驗證用戶是否存在

四. ajax的優缺點
4.1 優點

        - ajax使用javascript技術向服務器發送異步請求;
        - ajax無需刷新整個頁面;
        - 因為服務器響應內容不再是整個頁面,而是頁面中的局部,所以ajax性能更高

4.2 缺點

        - ajax並不適合所有場景,很多時候還是要使用同步交互
        - ajax雖然提高了用戶體驗,但是無形中向服務器發送的請求次數增多,導致服務器壓力增大
        - 因為ajax是在瀏覽器中使用javascript技術完成的,所以還需要處理瀏覽器兼容性問題

五. ajax使用流程
5.1 四步操作:

        - 創建核心對象
        - 使用核心對象打開與服務器的連接
        - 發送請求
        - 註冊監聽,監聽服務器響應

5.2 xmlhttprequest

        - open(請求方式,URL,是否異步)
        - send(請求體)
        - onreadystatechange,指定監聽函數,他會在xmlhttp對象的狀態發生變化時被調用
        - readystate,當前xmlhttp對象的狀態,其中4狀態表示服務器響應結束
        - status,服務器響應的狀態碼,只有服務器響應結束時才會有,200表示響應成功
        - responseText,獲取服務器的響應體

AJAX入門學習-1:理解ajax