利用XMLHTTP检测URL及探测服务器信息

原创 2003年01月14日 09:06:00

主要利用了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 响应行状态。

利用XMLHTTP检测URL及探测服务器信息

利用XMLHTTP检测URL及探测服务器信息请输入URL:检测Dim i,jnkcUrl,jnkcHTML,jnkcStatus,jnkcServerFunction chk_onClick()jnk...
  • gengwei80
  • gengwei80
  • 2004年08月11日 16:53
  • 536

检测当前URL是否可连接或是否有效(一)

/** * 功能:检测当前URL是否可连接或是否有效, * 描述:最多连接网络 3 次, 3次脚本调用失败则跳过这个URL * @param urlStr 指定URL网络地址 * @retur...
  • vivian_zw
  • vivian_zw
  • 2016年10月05日 21:29
  • 663

STUN协议,探测NAT类型(实现过程一)

STUN协议,探测NAT类型(实现过程一)1, STUN客户端(101:10)向STUN服务器(404:40)发送请求,要求得到自身经NAT映射后的地址(202:20):       a,收不到服务器...
  • hack8
  • hack8
  • 2011年07月08日 21:57
  • 1285

批量探测主机是否存活

该脚本用来批量探测大量需要探测的主机是否存活,使用的是nmap探测主机端口判断,至于用哪个端口,你得根据你的业务判断。为什么不用ping呢,因为ping不靠谱,网络稍微有点问题,就发宕机邮件,一天好几...
  • u010933953
  • u010933953
  • 2016年03月10日 11:01
  • 1754

HotSpot的热点代码探测技术

判断一段代码是否是热点代码方式有两种: 1)基于采样的热点探测 2)基于计数器的热点探测,采用这种方法的虚拟机会为每个方法建立计数器,统计方法的执行次数,如果执行次数超过一定的阈值 就认为他是热...
  • qq_34830965
  • qq_34830965
  • 2017年07月23日 10:19
  • 249

Whois网络注册信息探测

whois的相关详情
  • qq_20336817
  • qq_20336817
  • 2014年12月03日 23:14
  • 1191

微信检测工具

微信检测工具 微信检测工具检测服务优势在于:         一、价格优势:同行业中唯一一打码、更换IP无需另外收取费用的工具,检测费用按实际检测数量收取。         二、准确率: 采用腾讯...
  • baidu_36648878
  • baidu_36648878
  • 2016年11月08日 15:22
  • 236

编码不一致 (936到utf-8) 发送xmlhttp 到url后中文乱码

function GetHtml(sUrl,sUrl01){  var xmlRequest;  xmlRequest = new ActiveXObject("MSXML2.ServerXMLHTT...
  • smeyou
  • smeyou
  • 2011年06月20日 11:23
  • 1197

基于C#的WEB服务器运行状态监测程序

每天监测网站是否正常运行,之前是一个一个打开,现在写一个程序来监测。步骤1.将文件配成XML格式方便读写,相对于数据库来说已操作。XmlDocument dom = new XmlDocument()...
  • younghaiqing
  • younghaiqing
  • 2017年02月09日 14:31
  • 787

PHP检测url重定向的最终地址

引言客户需求, 需要判断一个url跳转后的url是否是目标url, 于是有此文, 惯例先贴代码.代码/** * 递归检测url重定向地址, 直到重定向到rule所指地址 * 返回该地址 * *...
  • hldh214
  • hldh214
  • 2016年05月31日 22:26
  • 432
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用XMLHTTP检测URL及探测服务器信息
举报原因:
原因补充:

(最多只允许输入30个字)