Linux编程Libcurl库的安装和常用函数
Posted 妖影8023
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux编程Libcurl库的安装和常用函数相关的知识,希望对你有一定的参考价值。
版权声明:本文为博主原创文章,转载请注明出处。 https://www.cnblogs.com/YaoYing/p/14759143.html
安装Libcurl库
sudo apt-get install libcurl3
sudo apt-get install libcurl4-openssl-dev
验证
查看是否有/usr/include/x86_64-linux-gnu/curl/
这个目录,如果存在,表示安装成功。
使用步骤
-
调用
curl_global_init()
初始化libcurl -
调用
curl_easy_init()
函数得到easy interface
型指针 -
调用
curl_easy_setopt()
设置传输选项 -
调用
curl_easy_setopt()
实现回调函数 -
调用
curl_easy_perform()
函数传输任务 -
调用
curl_easy_cleanup()
释放内存 -
调用
curl_global_cleanup()
析构libcurl
函数介绍
CURLcode curl_global_init(long flags);
描述:
这个函数只能用一次。(其实在调用curl_global_cleanup 函数后仍然可再用)
如果这个函数在curl_easy_init函数调用时还没调用,它将由libcurl库自动调用,所以多线程下最好主动调用该函数以防止在线程中curl_easy_init被多次调用。
当应用程序不再使用libcurl的时候,应该调用curl_global_cleanup来释放相关的资源。
注意:虽然libcurl是线程安全的,但curl_global_init是不能保证线程安全的,所以不要在每个线程中都调用curl_global_init,应该将该函数的调用放在主线程中。
参数:flags
CURL_GLOBAL_ALL //初始化所有的子模块和一些默认的选项。
CURL_GLOBAL_SSL //初始化支持安全套接字层。
CURL_GLOBAL_WIN32 //初始化win32套接字库,只能应用于Windows平台。
CURL_GLOBAL_NOTHING //没有额外的初始化。
以上是关于Linux编程Libcurl库的安装和常用函数的主要内容,如果未能解决你的问题,请参考以下文章
关于在Windows XP Server 2003下使用libcurl库的一些问题 附编译好的libcurl下载 和使用libcurl访问百度的例子工程