Antworten:
http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html
CURLINFO_RESPONSE_CODE Übergeben Sie einen Zeiger auf einen Long, um den zuletzt empfangenen HTTP- oder FTP-Code zu erhalten. Dies Die Option war in libcurl 7.10.7 und früheren Versionen als CURLINFO_HTTP_CODE bekannt. Dies wird Null sein, wenn kein Server-Antwortcode empfangen wurde. Beachten Sie, dass a Die CONNECT-Antwort des Proxys sollte mit CURLINFO_HTTP_CONNECTCODE gelesen werden und nicht das.
curl_code = curl_easy_perform (session);
long http_code = 0;
curl_easy_getinfo (session, CURLINFO_RESPONSE_CODE, &http_code);
if (http_code == 200 && curl_code != CURLE_ABORTED_BY_CALLBACK)
{
//Succeeded
}
else
{
//Failed
}
Die andere Antwort ist absolut richtig, aber ich möchte auch hinzufügen, dass es möglicherweise nicht ratsam ist, den Fehlercode von Hand zu überprüfen. Der 200
Code ist nicht der einzige Code, der Erfolg anzeigt.
Ich würde empfehlen, die libcurl-Option CURLOPT_FAILONERROR zu verwenden , die bei Aktivierung dazu führt, dass libcurl den Status " -category" als Anforderungsfehler betrachtet 400
und 500
nicht CURLE_OK
von "perform" zurückkehrt.