c++ - XMLHttpRequest 和证书错误

标签 c++ com xmlhttprequest msxml

我在我的 C++ 项目中使用 XMLHTTPRequest 对象。在具有有效证书的服务器上,我可以正常处理正常的 http 请求和 https 请求。当我尝试向证书将生成 IE 的服务器发出 https://请求时,“此网站的安全证书存在问题。”如果我试图用 IE 浏览那里,会出错,请求失败。

我从请求中得到的结果是 12019 错误。有什么方法可以使请求忽略错误并继续,就好像用户单击了“继续访问此网站”链接一样。

您将建议我修复证书中的任何错误。目前我无法控制该证书,因此我正在寻找不包括更正证书的答案(如果有的话)。

最佳答案

有一种方法,但不是 XMLHTTPRequest。使用 WinHTTP 时,您可以使用:

DWORD dwOptions = 
    SECURITY_FLAG_IGNORE_CERT_CN_INVALID 
    | SECURITY_FLAG_IGNORE_CERT_DATE_INVALID 
    | SECURITY_FLAG_IGNORE_UNKNOWN_CA 
    | SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE; 

bResults = WinHttpSetOption( hRequest,
    WINHTTP_OPTION_SECURITY_FLAGS,
    &dwOptions,
    sizeof(dwOptions));

关于c++ - XMLHttpRequest 和证书错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1246497/

相关文章:

c++ - C++调用抽象基类的构造函数

c++ - 在 C++ 中实现 COM 接口(interface),不公开方法

c# - 在 COM 对象上使用反射调用方法

javascript - 强制 XMLSerializer 不折叠空标签?

c++ - 如何使用德语语言环境在 gdb 中设置双变量?

c++ - 使用 PPL 查找数组中的最大元素

c++数组零初始化: Is this a bug,或者这是正确的吗?

c# - 导入到 C# 时,有什么方法可以修复 COM 结构成员的顺序吗?

javascript - 如何检索已解析的 url

javascript - 用户代理(浏览器)不通过 h​​ttps 提示输入凭据