Я не могу заставить libcurl правильно работать в определенном URL - PullRequest
0 голосов
/ 21 февраля 2019

Я работаю с libcurl в Visual Studio 2017, чтобы получить запрос от URL-адреса Google, но программа вылетает без вызова исключения, которое перехвачено.Я проверил с 2 другими URL, и он работал нормально.URL-адрес Google: "https://maps.googleapis.com/maps/api/elevation/json?locations=-23.64737184441803,-46.624&key=AIza...."

Когда я выполняю, выполняю разрывы кода без перехвата исключения:

код:

std::stringstream get_response(std::string_view url)
{
   std::stringstream str;
   curl::curl_ios<std::stringstream> writer(str);

   curl::curl_easy easy(writer);

   easy.add<CURLOPT_URL>(url.data());
   easy.add<CURLOPT_FOLLOWLOCATION>(1L);
   easy.add<CURLOPT_VERBOSE>(1L);

   try
   {
     easy.perform();
   }
   catch (curl::curl_easy_exception error)
   {
      auto errors = error.get_traceback();
      error.print_traceback();
   }

   return str;
}

I´Мы просмотрели несколько сайтов без успеха.

Любая помощь будет оценена

1 Ответ

0 голосов
/ 21 февраля 2019

Я получил немного больше информации из журнала:

...
schannel: SSL/TLS connection with maps.googleapis.com port 443 (step 2/3)
schannel: encrypted data got 778
schannel: encrypted data buffer: offset 3542 length 4096
schannel: next InitializeSecurityContext failed: Unknown error (0x80092013) -The revocation function was unable to check revocation because the revocation server was offline.
Marked for [closure]: Failed HTTPS connection
....

как это решить?

Спасибо

...