libcurl库的使用的一些心得

本文介绍了使用libcurl库进行文件下载,特别是多线程下载和断点续传的实现。通过libcurl的API设置,如全局初始化、句柄初始化、选项设置、回调函数等,实现从HTTP头获取文件大小,设置断点续传,以及文件的组合。文章强调了查看官方文档和示例的重要性,并提供了部分关键代码实例。
摘要由CSDN通过智能技术生成
libcurl库的使用的一些心得
一、概述
最近由于要做一个下载工具,最开始想到了libcurl库,和它提供的一些接口。网上的很多资料都是不全,或者是没有什么例子的,由于资质驽钝,使用libcurl库提供的api总是不那么顺畅。最后通过自己努力和查看官网提供的一些帮助文档和例子,终于把这个下载器制作出来了,现在把一些心得写出来,供后来人少走些弯路吧。(国内的程序猿总是没有多少分享精神的,很多资料的都是这copy点,那里copy点的,要不就在官网弄点英文资料,前面加几句话说,这个很全什么的,看的我想骂娘)

二、libcurl提供的一些api的使用
1、CURLcode curl_global_init(long flags);----全局初始化函数,在windows下使用CURL_GLOBAL_WIN32,初始化win sock的一些信息。
2、CURL *curl_easy_init();-----初始化一个CURL*的句柄。
3、CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);----设置http的一些属性,设置给libcurl
4、CURLM *curl_multi_init(void);------初始化一个CURLM * 句柄,使用这个可以实现非阻塞模式,建议使用该函数
5、CURLMcode curl_multi_add_handle(CURLM *multi_handle,   CURL *curl_handle);----把CURL*句柄添加到CURLM * 中
6、CURLcode curl_easy_perform(CURL *curl);----执行下载或者上传任务,执行的是函数curl_easy_setopt设置的一些选项
7、CURLMcode curl_multi_perform(CURLM *multi_handle,  i
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值