使用C ++重置curl标头

时间:2016-04-27 09:42:17

标签: c++ curl

我有这段代码

struct curl_slist *pCURL_List = NULL;
pCURL_List = curl_slist_append(pCURL_List, "Content-type: application/x-amf");
curl_easy_setopt(m_pCURL, CURLOPT_HTTPHEADER, pCURL_List);
curl_easy_perform(m_pCURL);

并且在curl_easy_perform(m_pCURL);之后我需要重置标头(代码的第一部分)。如果我执行curl_slist_free_all(pCURL_List);,则下一个curl_easy_perform(m_pCURL);会崩溃该程序。

我确定有其他参数,程序非常大,一切都在这些行之后的EXCEPT调用。

另外,当我说我需要重置标题时,我的意思是我想要curl来重新设置Content-type的旧默认值。如果我做

pCURL_List = curl_slist_append(pCURL_List, "Content-type:");

afaik它将删除“Content-type”标题。

1 个答案:

答案 0 :(得分:1)

对于崩溃,您是否在第二次调用curl_easy_perform之前将CURLOPT_HTTPHEADER设置为null?我认为列表本身已被释放,但CURL句柄仍然有一个指向现在无效内存的指针。