Vbscript Windows Server 2008 ServerXMLHTTP代理

Vbscript Windows Server 2008 ServerXMLHTTP代理,vbscript,windows-server-2008,winhttp,serverxmlhttp,Vbscript,Windows Server 2008,Winhttp,Serverxmlhttp,将应用程序从Windows Server 2003迁移到Windows Server 2008 x64。我们有一个简单的VBS脚本,它超出了域并使用post请求获取XML文档。该脚本在Windows Server 2003上运行良好,但是在新服务器上,我们不断获得407的状态代码(代理身份验证失败)。我确实验证了我可以在不设置任何来自内部网的代理信息的情况下拉入文件。Server 2008中的代理凭据方法是否有任何更改 简化代码: Dim o Set o = CreateObject("Msxm

将应用程序从Windows Server 2003迁移到Windows Server 2008 x64。我们有一个简单的VBS脚本,它超出了域并使用post请求获取XML文档。该脚本在Windows Server 2003上运行良好,但是在新服务器上,我们不断获得407的状态代码(代理身份验证失败)。我确实验证了我可以在不设置任何来自内部网的代理信息的情况下拉入文件。Server 2008中的代理凭据方法是否有任何更改

简化代码:

Dim o
Set o = CreateObject("Msxml2.ServerXMLHTTP.6.0")
o.open "POST", "https://somesite.com", false 
o.setProxy 2, "myproxy:8080", ""
o.setProxyCredentials "user", "pass" 
o.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
o.send "loginId=USER&password=1234" 
While o.readyState <> 4
 o.waitForResponse 1000 
Wend
Wscript.echo o.status
Dim o
设置o=CreateObject(“Msxml2.ServerXMLHTTP.6.0”)
o、 打开“POST”https://somesite.com”“错
o、 setProxy 2,“myproxy:8080”
o、 setProxyCredentials“用户”、“通过”
o、 setRequestHeader“内容类型”、“应用程序/x-www-form-urlencoded”
o、 发送“loginId=USER&password=1234”
而o.readyState 4
o、 等待响应1000
温德
Wscript.echo.status
似乎正在联系代理,因为如果没有代理,则无法解析服务器名称或地址,但是代理用户/密码未正确验证,因此无法在Windows server 2003上工作

编辑20140303:已经好几个月了,我还没有弄明白这一点。当我们打算淘汰Windows 2003机器时,我发现哪里出了问题变得越来越重要

我注意到,如果我将发送数据更改为不正确的UID/PWD,我会从页面(不正确的登录页面)收到一个响应。我不明白为什么这在Server2003上可以完美地工作,但在Server2008R2上似乎不可能


如果我在同一个框中打开IE,使用相同的代理信息,使用相同的UID/PWD访问相同的站点,它也可以工作。我这样做是为了确保没有某种基于IP的块,其中代理或站点UID/PWD仅在旧机器上工作。

我找到了与我有相同问题的人,并使用强制代理授权和代理连接头修复了它。我尝试了这些,甚至使用Fiddler来确保我正确地编码了代理用户/密码,但它不起作用。curl工作得非常好,这会使情况恶化,因为根据我们的is小组,它在我们的环境中不是一个可接受的解决方案。以下是指向具有相同问题的人的MSDN线程的链接: