【问题标题】:VbScript: get the server status using "Adodb.Stream"VbScript:使用“Adodb.Stream”获取服务器状态
【发布时间】:2014-08-24 13:12:47
【问题描述】:

如何使用 VbScript 从 Shoutcast 流媒体服务器获取状态? 我越接近是这样的:

Dim xHttp: Set xHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")
Dim bStrm: Set bStrm = CreateObject("Adodb.Stream")
xHttp.Open "GET", "http://www.partyvibe.com:8010", False
xHttp.Send
with bStrm
    .type = 1 'binary
    .open
    msgbox xHttp.responseBody
    msgbox .state
end with

但它实际上不起作用,因为流永远不会完成“打开”,它是一个连续的无线电流。

我只想检索流的前几个字节以了解服务器响应。 (例如:服务器已关闭,服务器正在流式传输,超时,...)

http://www.partyvibe.com:8010

它也可能不是 Shoutcast 服务器。

【问题讨论】:

    标签: vbscript stream connection


    【解决方案1】:

    解决办法如下:

    Const TIMEOUT = 5000
    Dim xHttp: Set xHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")
    Dim url: url = "http://www.partyvibe.com:8010"
    
    xHttp.Open "GET", url, True
    xHttp.setRequestHeader "User-Agent", "Winamp/5.x"
    xHttp.Send
    
    WScript.sleep TIMEOUT
    
    
    If (xHttp.readyState<>3) then
        msgbox "Stream server is not responding!"
    end if
    

    .readyState 参考: http://msdn.microsoft.com/en-us/library/ms761388%28v=vs.85%29.aspx

    • (1) LOADING --------> 超时
    • (4) COMPLETED ------>如果服务器仍在流式传输,则不应完成

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-22
      • 2014-09-17
      • 1970-01-01
      相关资源
      最近更新 更多