利用XMLHTTP檢測URL及探測伺服器資訊

來源:互聯網
上載者:User

主要利用了XMLHTTP的一些方法和屬性來擷取伺服器的資訊。
XMLHTTP 對象方法和對象屬性附於以下文檔:
http://www.csdn.net/Develop/article/16/16493.shtm
關於狀態代碼的問題,可以見我的一篇文檔《互連網HTTP串連等出錯代碼大全》
http://www.csdn.net/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.csdn.net" 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>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.