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

Casablanca C++ Rest - how to disable certificate validation

本文关键字:证书 验证 何禁用 C++Rest- Casablanca      更新时间:2023-10-16

我正在尝试使用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:%sn", e.what());
       }

请引导。

谢谢Sunil

这似乎在2.6.0中的NuGet.org 中得到了纠正

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

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