http - 在 vbscript 中测试 HTTP 响应

标签 http vbscript timeout

我需要测试来自 web url 的响应时间,看看它是否响应缓慢。我从一个教程网站(不记得是哪个)获得了这个,但它并不完全符合我的要求:

On Error Resume Next 
Set XMLHttp = CreateObject("MSXML2.ServerXMLHTTP") 
xmlhttp.open "GET", "http://website.url.com" , 0 
xmlhttp.send "" 
If Err.Number < 0 OR Err.Number > 0 Then 
  Dim objShell
  Set objShell = WScript.CreateObject ("WScript.shell")
  MsgBox "TimeOut"
  Set objShell = Nothing
  WScript.Quit 
Else
  MsgBox "OK"
End If 

Set xmlhttp = Nothing

此脚本仅测试站点是否超时。我需要更详细的信息,比如即使没有超时,响应时间是多长等等。

最佳答案

好的,我找到了解决方案:

Dim strHost

' Put your server here
strHost = "localhost"

if Ping(strHost) = True then
    Wscript.Echo "Host " & strHost & " contacted"
Else
    Wscript.Echo "Host " & strHost & " could not be contacted"
end if

Function Ping(strHost)

    dim objPing, objRetStatus

    set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery _
      ("select * from Win32_PingStatus where address = '" & strHost & "'")

    for each objRetStatus in objPing
        if IsNull(objRetStatus.StatusCode) or objRetStatus.StatusCode<>0 then
        Ping = False
            'WScript.Echo "Status code is " & objRetStatus.StatusCode
        else
            Ping = True
            'Wscript.Echo "Bytes = " & vbTab & objRetStatus.BufferSize
            Wscript.Echo "Time (ms) = " & vbTab & objRetStatus.ResponseTime
            'Wscript.Echo "TTL (s) = " & vbTab & objRetStatus.ResponseTimeToLive
        end if
    next
End Function 

所有学分都转到该网站及其作者:http://www.windowsitpro.com/article/vbscript/how-can-i-use-a-vbscript-script-to-ping-a-machine-

关于http - 在 vbscript 中测试 HTTP 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10788963/

相关文章:

asp.net-mvc - POST 请求后重定向时 MVC3 401 未经授权的响应

windows - 拖放操作调用的 vbscript 中的当前工作目录

VBScript 和浮点( double )数字 : Round function returns wrong result

python - 如何在等待响应时增加 AWS Sagemaker 调用超时

安卓错误 : Failed to install : timeout

php - 在 PHP 文件之间传递数据

c# - C# 库中是否有任何东西可以模拟 JavaScript 中的 Navigator 对象?

java - Apache http 客户端自签名证书

windows-7 - 在 Windows 7 中更改壁纸

c# - RabbitMQ 在 .CreateModel() 上抛出 TimeOut 异常