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

LibCurl how to catch both 400, not as a part of CURLE_HTTP_RETURNED_ERROR error

本文关键字:HTTP CURLE RETURNED ERROR 一部分 错误 何同时 LibCurl      更新时间:2023-10-16

在c++ Libcurl库中,区分http错误400和404?我有以下代码。我用CURLE_HTTP_RETURNED_ERROR捕获>=400,但我想在CURLE_HTTP_RETURNED_ERROR情况之前单独捕获错误400。有办法做到吗?

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

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) {
        ...
    }
}