Ajax原理步驟

核心:XMLHttpRequest對象
屬性 值 含義
readyState 0-4 4表示所有響應都被接受
responseText 只讀字符串 從服務器接收到的內容
responseXML 只讀 將響應內容解析爲XML格式,並以document對象方式返回
status 服務器返回的HTTP代碼
statusText status屬性的字符串形式
方法 含義
abort() 將readyState屬性設爲0並取消所有未完成的操作
getAllResponseHeaders() 以字符串形式返回爲解析的HTTP響應頭文件
getResoinseHeader("Content-Type") 指定http頭名稱
open(method,url,asynchronous,username,pwd)
method:請求方式 "get" "post" "head"
url: 請求頁面的URL地址
asynchronous flase時請求爲同步 true時請求爲異步
send(body) body params字符串
setRequestHeader(name,value) 爲請求設置指定頭的內容
步驟:
var r = new XMLHttpRequest //0
r.open("post","/b/find_user",true) //1
r.setRequestHeader("Content-Type","application/x-www-form-urlencoded") //2
r.onreadystatechange = "request()" //3
r.send(params) //4


//爲不支持XMLHttpRequest構造函數的IE版本定義替代函數
if(typeof(XMLHttpRequest)=="undefined" && window.ActiveXObject)
{
function XMLHttpRequest()
{
var xmlhttp_arr = ["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
var xml_request
for(var i=0;i<xmlhttp_arr.length;i++)
{
if(xml_request = new ActiveXObject(xmlhttp_arr[i]))
break
}
return xml_request
}
}


1.XMLHttpRequest對象,提供對html協議的完全訪問,通過該對象方法能夠想服務器發送Post請求和GET請求,能輕易獲得服務器返回結果。
方法:open(method,url,asynchronous,username,pwd) 設置請求的參數,但並不向服務器發送。
參數:method表示請求的方式,"GET","POST","HEAD"。url表示要請求的頁面的URL地址。
asynchronous爲布爾值,false表示請求同步,true表示請求異步。username和pwd爲可選參數,表示訪問目標URL的授權用戶名和密碼。

方法:send(body) 向服務器發送請求,在調用send方法前必須調用post方法,反之會出現異常
參數:body表示請求體,是一個字符串或者document對象。

方法:setRequestHeader(name, value)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章