如何使用 IWinHttpRequest 忽略无效证书?
Posted
技术标签:
【中文标题】如何使用 IWinHttpRequest 忽略无效证书?【英文标题】:How to ignore invalid certificates with IWinHttpRequest? 【发布时间】:2012-08-18 07:56:50 【问题描述】:我正在使用 Microsoft 的 WinHttpRequest
COM 对象请求带有无效证书的网页:
IWinHttpRequest http = new WinHttpRequest();
http.Open("GET", url, false);
http.Send(null);
除了对Send
的调用抛出异常:
0x80072F0D - The certificate authority is invalid or incorrect
我如何告诉WinHttpRequest
我不在乎,我希望它检索我要求的页面?
【问题讨论】:
【参考方案1】:解决方法是忽略four kinds of SSL errors:
//Code is released into the public domain. No attribution required.
IWinHttpRequest http = new WinHttpRequest();
http.Open("GET", url, false);
//ignore any TLS errors
option = http.Option[WinHttpRequestOption_SslErrorIgnoreFlags];
options = options | SslErrorFlag_Ignore_All;
http.Option[WinHttpRequestOption_SslErrorIgnoreFlags] = option;
//SslErrorFlag_Ignore_All 0x3300
//Unknown certification authority (CA) or untrusted root 0x0100
//Wrong usage 0x0200
//Invalid common name (CN) 0x1000
//Invalid date or certificate expired 0x2000
http.Send(null);
【讨论】:
这似乎不适用于 VB6,我仍然得到与 OP 相同的错误。以上是关于如何使用 IWinHttpRequest 忽略无效证书?的主要内容,如果未能解决你的问题,请参考以下文章
警告:忽略无效的分发 -ip (c:\python39\lib\site-packages) 我该如何解决这个问题,这是啥意思? [复制]