问题代码:
res = curl_easy_perform(m_easy_handle);
curl_slist_free_all(http_headers);
curl_easy_reset(m_easy_handle);
HtmlHttpHelper::initCommonCurlParam(m_easy_handle);
long headersize = 0;
res = curl_easy_getinfo(m_easy_handle, CURLINFO_HEADER_SIZE, &headersize);
long httpcode;
res = curl_easy_getinfo(m_easy_handle, CURLINFO_RESPONSE_CODE, &httpcode);
//以上headersize和httpcode总是返回0
解决:
res = curl_easy_perform(m_easy_handle);
long headersize = 0;
res = curl_easy_getinfo(m_easy_handle, CURLINFO_HEADER_SIZE, &headersize);
long httpcode;
res = curl_easy_getinfo(m_easy_handle, CURLINFO_RESPONSE_CODE, &httpcode);
curl_slist_free_all(http_headers);
curl_easy_reset(m_easy_handle);
HtmlHttpHelper::initCommonCurlParam(m_easy_handle);
原因:curl_easy_perform是正常调用的,但接下来被curl_easy_reset重置了m_easy_handle,导致最后获取responseCode时总是返回0!!!