快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

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

主要利用了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 响应行状态。
返回类别: 教程
上一教程: 存储.NET应用程序到定制的XML .config文件中
下一教程: 使用脚本验证XML文档

您可以阅读与"利用XMLHTTP检测URL及探测服务器信息"相关的教程:
· 利用ASP从远程服务器上接收XML数据
· 利用XMLHTTP 从其他页面获取数据
· 利用XMLHTTP无刷新添加数据之Get篇
· 利用jConfig获取XML文件中的配置信息
· 使用xmldom在服务器端生成静态html页面
    微笑服务 优质保证 索取样品