MSXML2.ServerXMLHTTP HTTPS"与服务器的连接异常终止"

时间:2017-10-14 10:55:25

标签: vba serverxmlhttp msxml2

我在EXCEL电子表格中的VBA中有以下测试代码。 我试图使用MSXML2.ServerXMLHTTP从远程服务中检索JSON(最终可能需要存储和发送cookie来创建会话以获取日期,所以我正在寻找最灵活的选项,似乎是ServerXMLHTTP,我可能是当然在这里错了)

我收到运行时错误-2147012866 80072efe"与服务器的连接异常终止"使用https访问网站时

看一些other questions表示这可能是防火墙问题...... 我关闭了Windows防火墙来测试它,结果是一样的。

经过一些实验,MSXML2.XMLHTTP运行良好。 此外,如果我使用http访问同一网站,我没有收到任何错误。 在下面的测试代码中,我收到了MSXML2.ServerXMLHTTP和WinHttp.WinHttpRequest的相同错误

 Sub TestRequest()
 Dim objHttp As New MSXML2.XMLHTTP
 Dim objServHttp As New MSXML2.ServerXMLHTTP
 Dim objWinHttp As New WinHttp.WinHttpRequest
 Dim URL As String
    'URL = "http://api.fixer.io/2017-10-10?base=gbp"
    URL = "https://api.fixer.io/2017-10-10?base=gbp"
   objHttp.Open "GET", URL, False
   On Error GoTo Error_request_1
   objHttp.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
   objHttp.send ("")

Error_request_1:


   'objServHttp.setOption 2, objServHttp.GetOption(2) - SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS 'Ignore Possible certificate errors
   'objServHttp.setOption 2, 13056 'Ignore possible certificate errors
   objServHttp.Open "GET", URL, False
   On Error GoTo Error_request_2
   objServHttp.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
   objServHttp.send ("")

Error_request_2:
    Stop

   objWinHttp.Open "GET", URL, False
   On Error GoTo Error_request_3
   objWinHttp.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
   objWinHttp.send ("")


Error_request_3:
    Stop

End Sub

我很乐意设置错误的选项,但我发现这些文档很难找到......

非常感谢任何试图让这些工作为https的帮助。

0 个答案:

没有答案