用 VBS 发送 HTTP 请求时,如果需要缓存,则用 Msxml2.XMLHTTP;否则应该用 Msxml2.ServerXMLHTTP。
比如我们用 Msxml2.XMLHTTP 发送 HTTP POST 请求模拟登陆了某个网站,它会把登陆时的 Cookie 和 Session 缓存下来,当我们想获取网站的数据时直接 HTTP GET 就行了,不需要人工发送 Cookie 和 Session。
但有时又不需要缓存,想用不同的账号登录时,就可以用Msxml2.ServerXMLHTTP。
Function httpGet(url,arg)
Dim http
Set http = CreateObject(arg)
http.open "GET",url, False
http.send
httpGet = http.ResponseText
'获取ResponseHead方法,比如Set-Cookie
'http.GetResponseHeader("Set-Cookie")
End Function
'无缓存
httpGet("http://www.baidu.com","Msxml2.ServerXMLHTTP")
'有缓存
httpGet("http://www.baidu.com","Msxml2.XMLHTTP")