我需要从VBScript向使用SSL保护的域发出HTTP请求。由于SSL证书信任失败,我正在使用的库ServerXMLHTTP似乎无法连接。这似乎很奇怪,因为当我浏览到Google Chrome浏览器中的域时,它将整个证书链报告为受信任的。
在ServerXMLHTTP对象上设置“ SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS”选项没有任何区别。
Windows Event Viewer中的“系统”日志包含一个错误,该错误的数字代码转换为以下内容,与VBScript错误一致:“ TLS1_ALERT_UNKNOWN_CA 48 SEC_E_UNTRUSTED_ROOT 0x80090325”
尽管显然需要一种简单的解决方案,但我同样有兴趣知道我什至可以开始解决此类问题,而无需诉诸StackOverflow寻求帮助。
这是我的剧本:
Dim http
Set http = CreateObject("Msxml2.ServerXMLHTTP.6.0")
http.Open "GET", "https://us.api.concursolutions.com/"
http.setOption 2, 13056 'sets the option "SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS" to "SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS"
http.Send
WScript.Echo http.responseText
Set http = Nothing