Casablanca C++ Rest - 如何禁用证书验证

Casablanca C++ Rest - how to disable certificate validation

我正在尝试使用 C++ Rest SDK 在服务器上执行 POST。 如果服务器设置为 http,它工作正常,但是如果服务器设置为 https,则代码失败并出现此错误

Error exception:EinHttpSendRequest: 12175: A security error occured

我假设这是因为证书验证,为了绕过它,我将 false 设置为 set_validate_certificates。但它仍然给我同样的错误。

这是我的代码。

wstring baseUrl = L"https://167.199.104.41:8044";
    http_client_config config;
    config.set_validate_certificates(false);


    http_client httpClient(baseUrl, config);



    try
    {
        http_request req(methods::POST);
        req.set_request_uri(L"/api/config/%5Bget%5D");
        req.set_body("[\"pool/test/url/server\",\"pool/test/url/instance\"]", "application/json");


        http_response httpResponse = httpClient.request(req).get();

        http::status_code st = httpResponse.status_code();

        if(httpResponse.status_code() == status_codes::OK)
        {
            wstring output = httpResponse.extract_string().get();
            wcout << output << endl;
        }
       }
       catch (const std::exception &e)
       {
         printf("Error exception:%s\n", e.what());
       }

请指导。

谢谢 苏尼尔

这似乎已在 NuGet.org

的 2.6.0 中得到纠正

https://www.nuget.org/packages/cpprestsdk.v120.windesktop.msvcstl.dyn.rt-dyn/

我刚刚卸载了 casablanca 2.4.0,然后重新安装,它对我有用。