Transfer sonrası bilgi

libcurl transferlerinin easy handle'lar ile nasıl ilişkili olduğunu hatırlayın. Her transferin böyle bir handle'ı vardır ve bir transfer tamamlandığında, handle temizlenmeden veya başka bir transfer için yeniden kullanılmadan önce, önceki işlemden bilgi çıkarmak için kullanılabilir.

Bunu yapmak için arkadaşınızın adı curl_easy_getinfo() ve ona hangi belirli bilgileri ilgilendiğinizi söylersiniz, o da yapabilirse o bilgiyi döndürür.

Bu işlevi kullandığınızda, easy handle'ı, hangi bilgiyi istediğinizi ve cevabı tutacak bir değişkene işaretçiyi iletirsiniz. Doğru türde bir değişkene işaretçi iletmelisiniz, yoksa işlerin ters gitme riskiyle karşı karşıya kalırsınız. Bu bilgi değerleri, transfer tamamlandıktan sonra sağlanmak üzere tasarlanmıştır.

Aldığınız veri bir long, bir 'char *', bir 'struct curl_slist *', bir double veya bir soket olabilir.

Önceki HTTP transferinden Content-Type: değerini şu şekilde çıkarırsınız:

CURLcode res;
char *content_type;
res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &content_type);

O bağlantıda kullanılan yerel port numarasını çıkarmak isterseniz:

CURLcode res;
long port_number;
res = curl_easy_getinfo(curl, CURLINFO_LOCAL_PORT, &port_number);

Mevcut bilgiler

Getinfo seçeneğiTürAçıklama
CURLINFO_ACTIVESOCKETcurl_socket_tOturumun aktif soketi
CURLINFO_APPCONNECT_TIMEdoubleBaşlangıçtan SSL/SSH el sıkışması tamamlanana kadar geçen süre
CURLINFO_APPCONNECT_TIME_Tcurl_off_tBaşlangıçtan SSL/SSH el sıkışması tamamlanana kadar geçen süre (mikrosaniye)
CURLINFO_CAINFOchar *libcurl'ün kullanmak üzere oluşturulduğu varsayılan CA dosyasının yolu
CURLINFO_CAPATHchar *libcurl'ün kullanmak üzere oluşturulduğu CA dizininin yolu
CURLINFO_CERTINFOstruct curl_slist *Sertifika zinciri
CURLINFO_CONDITION_UNMETlongBir zaman koşulunun karşılanıp karşılanmadığı
CURLINFO_CONNECT_TIMEdoubleBaşlangıçtan uzak ana bilgisayar veya proxy tamamlanana kadar geçen süre
CURLINFO_CONNECT_TIME_Tcurl_off_tBaşlangıçtan uzak ana bilgisayar veya proxy tamamlanana kadar geçen süre (mikrosaniye)
CURLINFO_CONN_IDcurl_off_tMevcut bağlantının sayısal kimliği (geri çağırımlar için)
CURLINFO_CONTENT_LENGTH_DOWNLOADdoubleContent-Length başlığından içerik uzunluğu
CURLINFO_CONTENT_LENGTH_DOWNLOAD_Tcurl_off_tContent-Length başlığından içerik uzunluğu
CURLINFO_CONTENT_LENGTH_UPLOADdoubleYükleme boyutu
CURLINFO_CONTENT_LENGTH_UPLOAD_Tcurl_off_tYükleme boyutu
CURLINFO_CONTENT_TYPEchar *Content-Type başlığından içerik türü
CURLINFO_COOKIELISTstruct curl_slist *Bilinen tüm çerezlerin listesi
CURLINFO_EFFECTIVE_METHODchar *Son kullanılan HTTP istek yöntemi
CURLINFO_EFFECTIVE_URLchar *Son kullanılan URL
CURLINFO_FILETIMElongAlınan belgenin uzak zamanı
CURLINFO_FILETIME_Tcurl_off_tAlınan belgenin uzak zamanı
CURLINFO_FTP_ENTRY_PATHchar *Bir FTP sunucusuna giriş yaptıktan sonraki giriş yolu
CURLINFO_HEADER_SIZElongAlınan tüm başlıkların bayt sayısı
CURLINFO_HTTP_CONNECTCODElongSon proxy CONNECT yanıt kodu
CURLINFO_HTTP_VERSIONlongBağlantıda kullanılan HTTP sürümü
CURLINFO_HTTPAUTH_AVAILlongMevcut HTTP kimlik doğrulama yöntemleri (bitmask)
CURLINFO_LASTSOCKETlongKullanılan son soket
CURLINFO_LOCAL_IPchar *Son bağlantının yerel uç IP adresi
CURLINFO_LOCAL_PORTlongSon bağlantının yerel uç portu
CURLINFO_NAMELOOKUP_TIMEdoubleBaşlangıçtan ad çözme tamamlanana kadar geçen süre
CURLINFO_NAMELOOKUP_TIME_Tcurl_off_tBaşlangıçtan ad çözme tamamlanana kadar geçen süre (mikrosaniye)
CURLINFO_NUM_CONNECTSlongÖnceki transfer için kullanılan yeni başarılı bağlantı sayısı
CURLINFO_OS_ERRNOlongSon bağlanma hatasından kaynaklanan errno
CURLINFO_PRETRANSFER_TIMEdoubleBaşlangıçtan transferin başlamasından hemen öncesine kadar geçen süre
CURLINFO_PRETRANSFER_TIME_Tcurl_off_tBaşlangıçtan transferin başlamasından hemen öncesine kadar geçen süre (mikrosaniye)
CURLINFO_PRIMARY_IPchar *Son bağlantının IP adresi
CURLINFO_PRIMARY_PORTlongSon bağlantının portu
CURLINFO_PRIVATEchar *Kullanıcının özel veri işaretçisi
CURLINFO_PROTOCOLlongBağlantı için kullanılan protokol
CURLINFO_PROXY_ERRORlongTransferden CURLE_PROXY döndürüldüyse ayrıntılı (SOCKS) proxy hatası
CURLINFO_PROXY_SSL_VERIFYRESULTlongProxy sertifika doğrulama sonucu
CURLINFO_PROXYAUTH_AVAILlongMevcut HTTP proxy kimlik doğrulama yöntemleri
CURLINFO_QUEUE_TIME_Tcurl_off_tBu transferin başlamayı beklerken kuyrukta tutulduğu süre (mikrosaniye)
CURLINFO_REDIRECT_COUNTlongTakip edilen toplam yönlendirme sayısı
CURLINFO_REDIRECT_TIMEdoubleSon transferden önceki tüm yönlendirme adımları için harcanan süre
CURLINFO_REDIRECT_TIME_Tcurl_off_tSon transferden önceki tüm yönlendirme adımları için harcanan süre (mikrosaniye)
CURLINFO_REDIRECT_URLchar *Yönlendirmeleri etkinleştirmiş olsaydınız bir yönlendirmenin sizi götüreceği URL
CURLINFO_REFERERchar *Kullanılan istek Referer: başlığı
CURLINFO_REQUEST_SIZElongGönderilen HTTP isteklerinde gönderilen bayt sayısı
CURLINFO_RESPONSE_CODElongSon alınan yanıt kodu
CURLINFO_RETRY_AFTERcurl_off_tYanıt Retry-After: başlığından gelen değer
CURLINFO_RTSP_CLIENT_CSEQlongRTSP sonraki beklenen istemci CSeq
CURLINFO_RTSP_CSEQ_RECVlongRTSP son alınan
CURLINFO_RTSP_SERVER_CSEQlongRTSP sonraki beklenen sunucu CSeq
CURLINFO_RTSP_SESSION_IDchar *RTSP oturum kimliği
CURLINFO_SCHEMEchar *Bağlantı için kullanılan şema
CURLINFO_SIZE_DOWNLOADdoubleİndirilen bayt sayısı
CURLINFO_SIZE_DOWNLOAD_Tcurl_off_tİndirilen bayt sayısı
CURLINFO_SIZE_UPLOADdoubleYüklenen bayt sayısı
CURLINFO_SIZE_UPLOAD_Tcurl_off_tYüklenen bayt sayısı
CURLINFO_SPEED_DOWNLOADdoubleOrtalama indirme hızı
CURLINFO_SPEED_DOWNLOAD_Tcurl_off_tOrtalama indirme hızı
CURLINFO_SPEED_UPLOADdoubleOrtalama yükleme hızı
CURLINFO_SPEED_UPLOAD_Tcurl_off_tOrtalama yükleme hızı
CURLINFO_SSL_ENGINESstruct curl_slist *OpenSSL kripto motorlarının bir listesi
CURLINFO_SSL_VERIFYRESULTlongSertifika doğrulama sonucu
CURLINFO_STARTTRANSFER_TIMEdoubleBaşlangıçtan ilk baytın alındığı ana kadar geçen süre
CURLINFO_STARTTRANSFER_TIME_Tcurl_off_tBaşlangıçtan ilk baytın alındığı ana kadar geçen süre (mikrosaniye)
CURLINFO_TLS_SSL_PTRstruct curl_slist *Daha fazla işlem için kullanılabilecek TLS oturum bilgisi
CURLINFO_TOTAL_TIMEdoubleÖnceki transferin toplam süresi
CURLINFO_TOTAL_TIME_Tcurl_off_tÖnceki transferin toplam süresi (mikrosaniye)
CURLINFO_XFER_IDcurl_off_tMevcut transferin sayısal kimliği (geri çağırımlar için)