利用XMLHTTP检测URL及探测服务器信息
类别: XML教程
主要利用了XMLHTTP的一些方法和属性来获取服务器的信息。
XMLHTTP 对象方法和对象属性附于本文后面。
关于状态码的问题,可以见我的另外一篇文档《互联网HTTP连接等出错代码大全》
http://www.csdn.net/Develop/Article/16/16477.shtm
另附:
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 响应行状态。
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 响应行状态。
- 上一篇: 利用XMLHTTP 从其他页面获取数据
- 下一篇: 使用DOM创建XML
-= 资 源 教 程 =-
文 章 搜 索