Ajax工作原理

2021-09-25 12:32:49 字數 1424 閱讀 6583

如果請求是get

// 建立xhr物件

// 設定請求方式和路徑

xhr.open('get',請求路徑);

// 傳送請求

xhr.send(null);

// 註冊事件,獲取響應內容

xhr.onreadystatechange = function ()

}

如果請求的事post

//建立xhr物件

//設定請求方式和請求路徑

xhr.open('post',請求路徑)

// 當post請求的時候,設定請求頭

// content-type 告訴伺服器傳送過去的請求體的格式

//傳送請求體

xhr.send(請求體)

// 註冊事件,接受響應內容

xhr.onreadystatechange = function ()

}

ajax 的最大特點是

ajax可以實現非同步通訊效果,實現頁面區域性重新整理,帶來更好的使用者體驗,按需獲取資料,節約頻寬資源

post 和 get 的區別

get: 一般用於資訊獲取,使用url傳遞引數,對所傳送資訊的數量也有限制,一般在2000個字元,有的瀏覽器是8000個字元;

post: 一般用於修改伺服器上的資源,對所發的資訊沒有限制在以下情況中,使用post請求:

無法使用快取檔案(更新伺服器上的檔案或資料庫)

向伺服器傳送大量資料(post沒有資料量限制)

傳送包含未知字元的使用者輸入時,post比get更穩定也更可靠

同步和非同步的區別

同步:阻塞的

瀏覽器向伺服器請求資料,伺服器比較忙,瀏覽器一直等著(頁面會白屏),直到伺服器返回資料,瀏覽

器才能顯示頁面

非同步:非阻塞的

瀏覽器向伺服器請求資料,伺服器比較忙,瀏覽器可以自如的幹原來的事情(顯示頁面),伺服器返回

資料的時候通知瀏覽器一聲,瀏覽器把返回的資料再渲染到頁面,區域性更新

http常見的狀態碼

200 – 成功,並返回資料

301 – 永久移動,重定向

302 – 臨時移動,可使用原有的url

400 – 請求語法錯誤

401 – 需要身份驗證

403 – 拒絕請求

404 – 資源不存在

500 – 伺服器返回錯誤

瀏覽器請求與響應過程

對輸入的url進行dns網域名稱解析(找出對應的ip位址)

通過ip位址,建立tcp請求(三次握手協議)

傳送http請求與響應

解析渲染服務端響應資料

斷開tcp鏈結

AJAX工作原理

xmlhttprequest 是 ajax 的基礎 所有現代瀏覽器均支援 xmlhttprequest 物件 ie5 和 ie6 使用 activexobject 所有現代瀏覽器 ie7 firefox chrome safari 以及 opera 均內建 xmlhttprequest 物件。如需將...

ajax工作原理,Jsonp原理

ajax工作原理是 相當於在使用者和伺服器之間加了 個中間層 ajax引擎 使使用者操作與伺服器響應非同步化。對於使用者請求ajax引擎會做一些資料驗證和資料處理,不是所有請求都提交給伺服器,當需要從伺服器讀取新資料時由ajax引擎代為向伺服器提交請求。ajax最大優點就是不重新整理整個頁面的前提下...

Ajax學習 理解 Ajax 及其工作原理

ajax是 asynchronous j ascript and xml 以及 dhtml 等 的縮寫.下面是 ajax 應用程式所用到的基本技術 html 用於建立 web 表單並確定應用程式其他部分使用的字段。j ascript 是執行 ajax 應用程式的核心 幫助改進與伺服器應用程式的通訊。...