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

博客介绍了利用XMLHTTP的方法和属性获取服务器信息,给出相关文档链接,还提供了利用XMLHTTP检测网址及探测服务器类型的全部源代码,通过代码可根据不同状态码判断网页情况并获取服务器类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要利用了XMLHTTP的一些方法和属性来获取服务器的信息。
XMLHTTP 对象方法和对象属性附于以下文档:
http://www.youkuaiyun.com/Develop/article/16/16493.shtm
关于状态码的问题,可以见我的一篇文档《互联网HTTP连接等出错代码大全》
http://www.youkuaiyun.com/Develop/Article/16/16477.shtm

以下是全部源代码:

<html>
<head>
<title>利用XMLHTTP检测网址及探测服务器类型</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>
<input type="text" id="jnkcInput" value="http://www.youkuaiyun.com" size="50"><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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值