LibCurl如何捕获400,而不是作为CURLE_HTTP_RETURNED_ERROR错误的一部分

时间:2015-08-19 20:02:48

标签: c++ libcurl

在C ++ Libcurl库中,区分http错误400和404? 我有以下代码。我使用>=400抓住了CURLE_HTTP_RETURNED_ERROR,但我想在400案例之前单独发现错误CURLE_HTTP_RETURNED_ERROR。有没有办法做到这一点?

curlCode = curl_easy_perform(request);
.....
switch(curlCode)
{
   case CURLE_HTTP_RETURNED_ERROR:

}

1 个答案:

答案 0 :(得分:4)

curl_easy_getinfo允许您获取响应代码。

long responseCode;
curlCode = curl_easy_perform(request);
curl_easy_getinfo(request, CURLINFO_RESPONSE_CODE, &responseCode);
if (responseCode == 400) {
    // handle error 400
} else {
    switch (curlCode) {
        ...
    }
}