2016-03-03 126 views
1

我试着用tu函数在C++中使用curl。 实施例:在C++中使用CURL函数

​​

在主函数调用我或myFunction1 myFunction2;

我不知道用这种方式使用libcurl是否正确,但是我遇到了问题。 我用这个在我的网站登录,所以我保存的Cookie丝毫验证码:

curl_easy_setopt(curl, CURLOPT_COOKIEFILE, cookiePath); 
curl_easy_setopt(curl, CURLOPT_COOKIEJAR, cookiePath); 
int main(){ 
curl_global_init(CURL_GLOBAL_ALL); 
myFunction1(); 
myFunction2(); 
curl_global_cleanup(); 
} 

假设我登录,并保存在myFunction1饼干。 当我尝试在myFunction2中设置时,它在CURLOPT_COOKIEFILE行上崩溃。 我不知道为什么cookie会保存在文件中,但是当我运行它在该行上崩溃的程序时,不能使用它。

对不起,我的英语 感谢的

+2

你可以在'curl_global_init'被调用的地方发布你的'main()'函数吗? – callyalater

+0

你看过['CURLOPT_COOKIEFILE'](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIEFILE.html)选项参考吗? – callyalater

+0

我没有使用curl_global_init,是否有必要? – Vincy6

回答

0

我的问题的原因是,当我使用curl_easy_cleanup(卷曲),然后curl_easy_init我改变的SessionID,所以我已保存cookie的不再是不错的。所以我使用第一个curl_easy_init,然后在我的函数中完成所有请求,并在我的程序结束时使用curl_easy_cleanup。要清理CURL OPTION,您可以使用:curl_easy_reset()。我已经为可能有同样问题的人更新了这篇文章。