LINUX.ORG.RU

libCURL: возвращать http код ошибки сервера при запросе


0

0

Есть простой код, использующий curl_easy интерфейс.

#define DST_HOST "http://somewhere"
...
CURL* handle = NULL;
curl_global_init(CURL_GLOBAL_ALL);
handle = curl_easy_init();
curl_easy_setopt(handle, CURLOPT_URL, DST_HOST);
curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, readfunc);
printf("code = %d\n", curl_easy_perform(handle));
curl_easy_cleanup(handle);


curl_easy_perform() возвращает внутренний код результата работы libcurl.
А как средствами самого libcurl определить, какой код 
ошибки выдал удаленный http-сервер: 403, 404 или еще какой-нибудь? 

Спасибо.
anonymous

Re: libCURL: возвращать http код ошибки сервера при запросе

Пока нашел вот такую штуку. Однако, не особо дескриптивно :).

CURLOPT_FAILONERROR

A non-zero parameter tells the library to fail silently if the HTTP code returned is equal to or larger than 400. The default action would be to return the page normally, ignoring that code.

anonymous
()

Re: libCURL: возвращать http код ошибки сервера при запросе

Вопрос снят. Спасибо за внимание :).

CURLOPT_HEADERFUNCTION

The header callback will be called once for each header and only complete header lines are passed on to the callback.

И, непосредственно, парсить сам header, что бы получить код ошибки.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.