CURLINFO_RESPONSE_CODE
Passe um ponteiro para um long para receber o último código HTTP ou FTP recebido. este
opção era conhecida como CURLINFO_HTTP_CODE na libcurl 7.10.7 e anterior. este
será zero se nenhum código de resposta do servidor for recebido. Observe que um
A resposta CONNECT do proxy deve ser lida com CURLINFO_HTTP_CONNECTCODE
e não isso.
A outra resposta está absolutamente correta, mas eu também gostaria de acrescentar que pode não ser sensato verificar o código de erro manualmente, o 200código não é o único código que significa sucesso.
Eu recomendo o uso da opção libcurl CURLOPT_FAILONERROR que, quando ativada, fará com que libcurl considere 400e 500-category status uma falha de solicitação e não retornará CURLE_OKda execução.
Como uma extensão disso, dependendo das opções definidas, existem outros códigos não "série 200" que são um sucesso, embora com o entendimento de que mais trabalho é necessário. Dois dos mais conhecidos são 301 e 302. Certamente curl pode ser configurado para lidar com isso automaticamente, mas pode haver casos em que o aplicativo pode querer lidar com eles sozinho. Uma possibilidade pode ser quando https: // está em uso com autenticação de cliente e uma cadeia de certificados completamente nova é necessária para o destino do resultado 301/302.
Respostas:
http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html
fonte
A outra resposta está absolutamente correta, mas eu também gostaria de acrescentar que pode não ser sensato verificar o código de erro manualmente, o
200
código não é o único código que significa sucesso.Eu recomendo o uso da opção libcurl CURLOPT_FAILONERROR que, quando ativada, fará com que libcurl considere
400
e500
-category status uma falha de solicitação e não retornaráCURLE_OK
da execução.fonte