Ajax是2005年2月才誕生可是如今已經煊赫一時的一項全新技術.這項新技術可以極大地改善網站的用戶體驗.小程序
Ajax是異步Javascript和XML(Asynchronous JavaScript and XML)的英文縮寫.服務器
Ajax的核心理念在於使用XMLHttpRequest對象發送異步請求.Ajax並非一門新的語言或技術,它其實是幾項技術按必定的方式組合在一塊兒,共同的協做中發揮各自的做用.異步
1.減輕服務器的負擔.Ajax的原則是"按需取數據".函數
2.無需刷新頁面,減小用戶心理和實際的等待時間.網站
3.帶來更好的用戶體驗.url
4.能夠把之前一些服務器負擔的工做轉移到客戶端,利用客戶端閒置的能力來處理,減輕服務器負擔,充分利用寬帶資源,節約空間和寬帶租用成本.spa
5.能夠調用外部數據.插件
6.基於標準化的並被普遍支持的技術,不須要下載插件或者小程序.對象
7.進一步促進頁面呈現與數據分離.事件
Ajax的一個最大的特色是無需刷新頁面即可向服務器傳輸或讀寫數據(又稱無刷新更新頁面),這一特色主要得益於XMLHTTP組件XMLHttpRequest對象.
屬性 |
描述 |
onreadystatechange |
每一個狀態改變時都會觸發這個事件處理程序,一般會調用一個JavaScript函數 |
readyState | 請求的狀態 |
responseText | 服務器的響應,表示爲一個串 |
responseXML | 服務器的響應,表示爲XML,這個對象能夠解析爲一個DOM對象 |
status | 服務器的HTTP狀態 |
statusText | HTTP狀態的對應文本 |
方法 | 描述 |
abort() | 中止當前請求 |
getAllResponseHeaders() | 把HTTP請求的全部相應首部做爲鍵/值對返回 |
getResponseHeader("header") | 返回指定首部的串值 |
open("method","url") | 創建對服務器的調用.method參數能夠是GET,POST或PUT等;url參數能夠是相對URL或絕對URL.這個方法還包括3個可選參數 |
send(content) | 向服務器發送請求 |
setRequestHeader("header","value") | 把指定首部設置爲所提供的值,在設置任何首部以前必須先調用open()方法 |