首頁  >  文章  >  後端開發  >  Microsoft.XMLHTTP物件介紹

Microsoft.XMLHTTP物件介紹

PHPz
PHPz原創
2017-04-02 11:18:012051瀏覽

MSXML中提供了Microsoft.XMLHTTP物件,能夠完成從封包到Request物件的轉換以及傳送任務。 建立XMLHTTP物件的語句如下:Set objXML = CreateObject("Msxml2.XMLHTTP") 或Set objXML = CreateObject("Microsoft.XMLHTTP")'Or for version 3.0 of

##MSXML中提供了Microsoft.XMLHTTP對象,能夠完成從資料包到Request對象的轉換以及發送任務。

建立XMLHTTP物件的語句如下:
##Set objXML = CreateObject("Msxml2.XMLHTTP") 或

Set objXML = CreateObject("Microsoft.XMLHTTP")

'Or for version 3.0 of XMLHTTP, use:
'Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP") 物件建立後呼叫Open方法對Request物件進行初始化,語法格式為: 

objXML.open http-method ,url,async,userID,password 
Open方法包含了5個參數,前三個是必要的,後兩個是可選的(在伺服器需要進行身份驗證時提供)。參數的意義如下所示:
http-method:HTTP的通訊方式,例如GET或是POST 
url:接收XML資料的伺服器的URL位址。通常在URL中要指明ASP或CGI程式 
async:一個布林標識,說明請求是否為非同步的。如果是非同步通訊方式(true),客戶機就不會等待伺服器的回應;如果是同步方式(false),客戶機就要等到伺服器回傳訊息後才去執行其他操作 
userID:使用者ID,用於伺服器驗證 
password:使用者密碼,用於伺服器驗證 
XMLHTTP物件的Send方法
使用Open方法對Request物件初始化後,呼叫Send方法傳送XML資料: 
objXML.send () Send方法的參數類型是Variant,可以是
字串
、DOM樹或任意資料流。 傳送資料的方式分為同步和非同步兩種。在非同步方式下,資料包一旦發送完畢,就結束Send進程,客戶機執行其他的操作;而在同步方式下,客戶機要等到伺服器回傳確認訊息後才結束Send進程。 XMLHTTP物件中的readyState屬性
其能夠反映伺服器在處理請求時的進展狀況。客戶機的程式可以根據這個狀態資訊設定對應的事件處理方法。屬性值及其意義如下表所示: 

值說明 
0   Response物件已經創建,但XML文件上載程序尚未結束 
1   XML文件已經載入完畢 
2  ##1   XML文件已經載入完畢裝載完畢,正在處理中 
3   部分XML文件已經解析 
#4   文件已經解析完畢,客戶端可以接受回傳訊息
客戶機處理回應訊息,客戶機接收到回傳訊息後,進行簡單的處理,基本上就完成了C/S之間的一個互動週期。
客戶機接收回應是透過XMLHTTP物件的屬性實現的:
responseText:將回傳訊息作為文字字串; 
responseBody:將回傳訊息當作HTML文件內容;
responseXML:將傳回訊息視為XML文檔,在伺服器回應訊息中含有XML資料時使用; 
responseStream:將返回訊息視為Stream對象 
以下是一個簡單的範例:類似新聞小偷

<%
Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")
objXML.open "GET","http://www.php.cn",false
objXML.send()
response.write(objXML.responseText)
%>

整個步驟很明顯:建立、開啟、傳送和接受。

以上是Microsoft.XMLHTTP物件介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn