1. ホーム
  2. c

[解決済み] libcurlでHttpステータスコード?

2023-01-13 23:05:12

質問

curl_easy_performを呼び出した後、HTTPステータスコード(例えば200や500)を取得するにはどうすればよいですか?

どのように解決するのですか?

http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html

curlinfo_response_code

最後に受信した HTTP または FTP コードを受け取るための long へのポインタを渡します。この
オプションは libcurl 7.10.7 およびそれ以前では CURLINFO_HTTP_CODE として知られていました。この 
は、サーバー レスポンス コードを受信していない場合はゼロになります。プロキシのCONNECTレスポンスは 
プロキシの CONNECT レスポンスは、これではなく CURLINFO_HTTP_CONNECTCODE で読み込む必要があることに注意してください。
で読むべきであり、これではないことに注意してください。

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
}