什么是curl
curl是一个用于传输数据的命令行脚本工具,始于1998年,是一个免费的开源软件,应用非常广泛,广泛应用于汽车,电视机,路由器,打印机,音频设备,移动电话,笔记本,机顶盒,多媒体播放器,是数以亿计设备的数据传输引擎
支持DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP,如此多的通讯协议。同时也支持 HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, HTTP/2, HTTP/3, cookies, user+password authentication (Basic, Plain, Digest, CRAM-MD5, SCRAM-SHA, NTLM, Negotiate and Kerberos), file transfer resume, proxy tunneling and more.
当前最新版本V7.78
libcurl是什么
libcurl是curl的库版本,用于集成到代码中
最新版本下载地址:https://curl.se/download.html
API接口说明:libcurl - API
libcurl官方示例:libcurl - source code examples
官网教程书籍《everything curl》地址:Introduction - Everything curl
相关博文:libcurl完全教程(注意:是,完全教程)_isinstance的博客-CSDN博客
libcurl有两套接口:easy与Muti
easy是同步的,Muti是异步的
easy接口说明:libcurl - easy interface overview
Muti接口说明:libcurl - multi interface overview
如果使用libcurl传输数据
使用easy接口:
curl_easy_init() //初始化curl句柄
curl_easy_setopt() //设置参数
curl_easy_perform() //执行命令
curl_easy_cleanup()//释放句柄
重点是curl_easy_setopt中各种参数如何设置。需要重点学习下