WSH (VBScript) で XMLHTTPRequest

この質問の回答での余禄。

    url = ...

    Set xhr = CreateObject("MSXML2.ServerXMLHTTP")

    xhr.Open "GET", url, False
    xhr.Send
    If xhr.Status < 400 Then
        WScript.Echo xhr.responseText
    End If

同期モードになるのは VBScript なので、しゃあない。

プロクシを使うときはこう。

    xhr.Open "GET", url, False
    xhr.setProxy 2, "proxy.foo.com:8080", ""
    xhr.Send

認証ありのプロクシだと、こんな感じ。

    xhr.Open "GET", url, False
    xhr.setProxy 2, "proxy.foo.com:8080", ""
    xhr.setProxyCredentials "a-kuma3" , "a-kuma3-password"
    xhr.Send


例によって、ネタは stackoverflow 。
http://stackoverflow.com/questions/19008874/xmlhttp-request-ajax-with-vbskript-does-not-work-with-proxy-connection

MSXML 6.0 以降、って地雷も、今なら踏む人は少ないか。


MSDN
https://msdn.microsoft.com/en-us/library/windows/desktop/aa384059%28v=vs.85%29.aspx

三番目の引数は、プロクシの除外対象。