一、使用步驟: 1、創(chuàng)建XMLHTTP對(duì)象 //需MSXML4.0支持 2、打開(kāi)與服務(wù)端的連接,同時(shí)定義指令發(fā)送方式,服務(wù)網(wǎng)頁(yè)(URL)和請(qǐng)求權(quán)限等??蛻舳送ㄟ^(guò)Open命令打開(kāi)與服務(wù)端的服務(wù)網(wǎng)頁(yè)的連接。與普通HTTP指令傳送一樣,可以用"GET"方法或"POST"方法指向服務(wù)端的服務(wù)網(wǎng)頁(yè)。 3、發(fā)送指令。 4、等待并接收服務(wù)端返回的處理結(jié)果。 5、釋放XMLHTTP對(duì)象 二、XMLHTTP方法: Open( bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword ) bstrMethod: 數(shù)據(jù)傳送方式,即GET或POST。 bstrUrl: 服務(wù)網(wǎng)頁(yè)的URL。 varAsync: 是否同步執(zhí)行。缺省為True,即同步執(zhí)行,但只能在DOM中實(shí)施同步執(zhí)行。用中一般將其置為False,即異步執(zhí)行。 bstrUser: 用戶名,可省略。 bstrPassword:用戶口令,可省略。 Send( varBody ) varBody:指令集??梢允荴ML格式數(shù)據(jù),也可以是字符串,流,或者一個(gè)無(wú)符號(hào)整數(shù)數(shù)組。也可以省略,讓指令通過(guò)Open方法的URL參數(shù)代入。 setRequestHeader( bstrHeader, bstrvalue ) bstrHeader:HTTP 頭(header) bstrvalue: HTTP 頭(header)的值
如果Open方法定義為POST,可以定義表單方式上傳: xmlhttp.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded") 三、XMLHTTP屬性: onreadystatechange:在同步執(zhí)行方式下獲得返回結(jié)果的事件句柄。只能在DOM中調(diào)用。 responseBody: 結(jié)果返回為無(wú)符號(hào)整數(shù)數(shù)組。 responseStream: 結(jié)果返回為IStream流。 responseText : 結(jié)果返回為字符串。 responseXML: 結(jié)果返回為XML格式數(shù)據(jù)。
四、示例: < script language="JavaScript" > function getDatal(url){ var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP.4.0");//創(chuàng)建XMLHTTPRequest對(duì)象,需MSXML4.0支持 ["MSXML2.XMLHTTP.4.0","MSXML2.DOMDocument.4.0"] xmlhttp.open("POST",url,false,"",""); //使用HTTP GET初始化HTTP請(qǐng)求 xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded") ; xmlhttp.send("param=aa"); //發(fā)送HTTP請(qǐng)求并獲取HTTP響應(yīng) return xmlhttp.responseText; //獲取返回結(jié)果字符串 } < /script >
|