【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/这个目录,如果存在,表示安装成功。

使用步骤

  1. 调用curl_global_init()初始化libcurl

  2. 调用curl_easy_init()函数得到easy interface型指针

  3. 调用curl_easy_setopt()设置传输选项

  4. 调用curl_easy_setopt()实现回调函数

  5. 调用curl_easy_perform()函数传输任务

  6. 调用curl_easy_cleanup()释放内存

  7. 调用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      //没有额外的初始化。
上一篇:libcurl 错误CURLE_COULDNT_CONNECT 解决办法


下一篇:JetBrains IDEA Web开发简单配置