仅用于HTTPS的WinHttpSetOption

时间:2019-02-28 11:32:53

标签: windows winapi wininet

我只希望发送请求 https ,而不是http now选项,我应该只限制 https 。无法理解应该删除哪些标志dwFlags以禁止HTTP。

      DWORD dwFlags = SECURITY_FLAG_IGNORE_UNKNOWN_CA |
                  SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE |
                  SECURITY_FLAG_IGNORE_CERT_CN_INVALID |
                  SECURITY_FLAG_IGNORE_CERT_DATE_INVALID;

  if (WinHttpSetOption(hRequest,
                       WINHTTP_OPTION_SECURITY_FLAGS,
                       &dwFlags,
                       sizeof(dwFlags))) {

     bResults = WinHttpSendRequest(hRequest,
                                   WINHTTP_NO_ADDITIONAL_HEADERS,
                                   0, WINHTTP_NO_REQUEST_DATA, 0,
                                   0, 0);

谢谢

1 个答案:

答案 0 :(得分:0)

要使用HTTPS发送请求,您需要在调用WinHttpOpenRequest()时指定WINHTTP_FLAG_SECURE标志:

  

使用安全事务语义。这意味着可以使用安全套接字层(SSL)/传输层安全性(TLS)。

HTTPS是基于SSL / TLS的HTTP。