code:обработка ошибок

Этот коммит содержится в:
Alice (KhorovodnikovaAA)
2025-05-29 23:12:42 +03:00
родитель 8b0194d3ea
Коммит e65b65756c

Просмотреть файл

@@ -51,35 +51,31 @@ static size_t WriteCallback(void* contents, size_t size, size_t nmemb, void* use
int main(int argc, char* argv[]) { int main(int argc, char* argv[]) {
if (argc > 1) { if (argc > 1) {
CURL* curl = curl_easy_init(); CURL* curl = curl_easy_init();
if(curl) { if (!curl) {
CURLcode res; cerr << "Îøèáêà: íå óäàëîñü èíèöèàëèçèðîâàòü cURL" << endl;
string readBuffer; exit(1);
}
// Óñòàíàâëèâàåì URL èç ïåðâîãî àðãóìåíòà êîìàíäíîé ñòðîêè string readBuffer;
curl_easy_setopt(curl, CURLOPT_URL, argv[1]); curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
// Óñòàíàâëèâàåì callback-ôóíêöèþ äëÿ çàïèñè äàííûõ
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
// Óñòàíàâëèâàåì áóôåð äëÿ çàïèñè äàííûõ
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer); curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
// Âûïîëíÿåì çàïðîñ // Âðåìåííîå îòêëþ÷åíèå ïðîâåðêè SSL äëÿ òåñòîâ
// Îòêëþ÷àåì ïðîâåðêó SSL (òîëüêî äëÿ òåñòèðîâàíèÿ!)
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
res = curl_easy_perform(curl);
CURLcode res = curl_easy_perform(curl);
if (res != CURLE_OK) { if (res != CURLE_OK) {
cerr << "curl_easy_perform() failed: " << curl_easy_strerror(res) << endl; cerr << "Îøèáêà cURL: " << curl_easy_strerror(res) << endl;
} else { curl_easy_cleanup(curl);
// Âûâîäèì ïîëó÷åííûå äàííûå exit(1); // Çàâåðøàåì ïðîãðàììó ñ êîäîì îøèáêè
cout << readBuffer;
} }
// Î÷èùàåì ðåñóðñû cURL cout << readBuffer;
curl_easy_cleanup(curl); curl_easy_cleanup(curl);
return 0; return 0;
} }
}
curl_global_init(CURL_GLOBAL_ALL); curl_global_init(CURL_GLOBAL_ALL);
size_t max_count; size_t max_count;
auto in = input_data(cin); auto in = input_data(cin);