怎樣用XMLHTTP檢測URL及探測服務器信息_Xml教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:XMLHTTP 對象及其方法簡介MSXML中提供了Microsoft.XMLHTTP對象,能夠完成從數據包到Request對象的轉換以及發送任務。 創建XMLHTTP對象的語句如下: Set objXML = CreateObject(Msxml2.XMLHTTP) 或 Set objXML = CreateObject(“Microsoft.XMLHTTP”) ' Or, for version 3.0 of XMLHTTP
主要利用了XMLHTTP的一些方法和屬性來獲取服務器的信息。
XMLHTTP 對象方法和對象屬性附于本文后面。
關于狀態碼的問題,可以見我的另外一篇文檔《互聯網HTTP連接等出錯代碼大全》
http://www.csdn.net/Develop/Article/16/16477.shtm
| <html> <head> <title>利用XMLHTTP檢測URL及探測服務器信息</title> <META http-equiv=Content-Type content="text/html; charset=gb2312"> <meta name="Generator" content="EditPlus"> <meta name="Author" content="JnKc"> <meta name="Keywords" content=""> </head> <body> 請輸入URL:<input type="text" id="jnkcInput" value="http://" size="40"><button id="chk">檢測</button> <div id="jnkc_show"></div> <SCRIPT LANGUAGE="VBScript"> Dim i,jnkcUrl,jnkcHTML,jnkcStatus,jnkcServer Function chk_onClick() jnkcUrl = jnkcInput.value Call GetDetail i = i+1 jnkc_show.innerHTML = "<hr><pre><font color=red>" & i & "、" & jnkcUrl & "</font><br>" & jnkcStatus & "</pre>" & jnkc_show.innerHTML End Function Dim jnkcXMLHTTP Sub GetDetail Set jnkcXMLHTTP = CreateObject("Microsoft.XMLHTTP") jnkcXMLHTTP.OnReadyStateChange = GetRef("GetStatus") jnkcXMLHTTP.Open "GET", jnkcUrl, False On Error Resume Next jnkcXMLHTTP.Send Set jnkcXMLHTTP = Nothing End Sub Sub GetStatus If jnkcXMLHTTP.ReadyState <> 4 Then Exit Sub End If If jnkcXMLHTTP.Status = 404 Then jnkcStatus = "該網頁不存在!" ElseIf jnkcXMLHTTP.Status < 200 Then jnkcStatus = "客戶端錯誤,信息:" & CStr(jnkcXMLHTTP.Status) & " " & jnkcXMLHTTP.StatusText ElseIf jnkcXMLHTTP.Status < 300 Then jnkcStatus = "成功,該網頁能訪問。" ElseIf jnkcXMLHTTP.Status < 400 Then jnkcStatus = "重定向,信息:" & CStr(jnkcXMLHTTP.Status) & " " & jnkcXMLHTTP.StatusText ElseIf jnkcXMLHTTP.Status < 500 Then jnkcStatus = "客戶端錯誤,信息:" & CStr(jnkcXMLHTTP.Status) & " " & jnkcXMLHTTP.StatusText ElseIf jnkcXMLHTTP.Status < 600 Then jnkcStatus = "服務器錯誤,信息:" & CStr(jnkcXMLHTTP.Status) & " " & jnkcXMLHTTP.StatusText Else jnkcStatus = "域名不可用或網絡連接錯誤,信息:" & CStr(jnkcXMLHTTP.Status) & " " & jnkcXMLHTTP.StatusText End If If jnkcXMLHTTP.Status < 600 Then Call GetServer End Sub Sub GetServer jnkcServer = jnkcXMLHTTP.GetResponseHeader("Server") If jnkcServer <> "" Then jnkcStatus = jnkcStatus & "<br>HTTP服務器:" & jnkcServer End If jnkcStatus = "<b>" & jnkcStatus & "</b><br>所有反饋信息:<br>"& jnkcXMLHTTP.GetAllResponseHeaders End Sub </SCRIPT> </body> </html> |
______________________________________________________________________________________
另附:
ServerXMLHTTP 對象方法
方法 說明
Abort 取消當前 HTTP 請求。
GetAllResponseHeaders 從響應信息中檢索所有的標頭字段(header fields)。
GetResponseHeader 從響應信息正文中獲得一個 HTTP 標頭值。
Open 打開一個與 HTTP 服務器的連接。
SetRequestHeader 設定一個請求的標頭字段。
Send 向 HTTP 服務器發送請求。可包含正文。
ServerXMLHTTP 對象屬性
屬性 值 說明
OnReadyStateChange 事件處理器參考 僅用于異步操作。指定當就緒狀態發生改變時(例如當數據從服務器上返回時)調用的事件處理器。
ReadyState 整型 說明異步操作的狀態:未初始化(0),正在加載(1),已加載(2),交互(3),或者已完成(4)。
ResponseBody 變量數組 將響應信息正文作為數組返回。
ResponseStream Istream 將響應信息正文作為一個 ADO Stream 對象返回。
ResponseText 字符串 將響應信息正文作為一個文本字符串返回。
ResponseXML XMLDocument 對象 返回響應信息正文,并視為已被 MSXML XMLDOM 語法分析器分析過。
Status 長型 由服務器返回的 HTTP 狀態碼。
StatusText 字符串 HTTP 響應行狀態。
分享:揭秘用XML和XSL來生成動態頁面的技巧xml(可擴展標記語言)看起來可能像某種w3c標準——現在沒有什么實際影響,即使以后能派上用場,也是很久以后的事。但實際上,它現在已經得到了應用。所以,不要等到xml已被加進了你最喜愛的html編輯器中才開始使用它。它現在就可以解決各種內部問題和 b2b系
相關Xml教程:
- 相關鏈接:
- 教程說明:
Xml教程-怎樣用XMLHTTP檢測URL及探測服務器信息
。