Jus*_*ett 41 vbscript http request
有没有办法在Visual Basic脚本中执行HTTP GET请求?我需要从特定的URL获取响应的内容以进行处理.
svi*_*nto 71
Dim o
Set o = CreateObject("MSXML2.XMLHTTP")
o.open "GET", "http://www.example.com", False
o.send
' o.responseText now holds the response as a string.
Run Code Online (Sandbox Code Playgroud)
Ant*_*nes 40
您还没有在撰写本文时描述您将如何处理响应或其内容类型.答案已经包含了一个非常基本的用法MSXML2.XMLHTTP(我建议使用更明确的MSXML2.XMLHTTP.3.0progID)但是你可能需要对响应做不同的事情,它可能不是文本.
XMLHTTP还有一个responseBody属性,它是响应的字节数组版本,并且有一个响应responseStream的IStream包装器.
请注意,在服务器端需求(例如,在ASP中托管的VBScript)中,您将使用MSXML.ServerXMLHTTP.3.0或WinHttp.WinHttpRequest.5.1(具有几乎相同的接口).
以下是使用XmlHttp获取PDF文件并存储它的示例: -
Dim oXMLHTTP
Dim oStream
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.3.0")
oXMLHTTP.Open "GET", "http://someserver/folder/file.pdf", False
oXMLHTTP.Send
If oXMLHTTP.Status = 200 Then
Set oStream = CreateObject("ADODB.Stream")
oStream.Open
oStream.Type = 1
oStream.Write oXMLHTTP.responseBody
oStream.SaveToFile "c:\somefolder\file.pdf"
oStream.Close
End If
Run Code Online (Sandbox Code Playgroud)