libcurl 库扫盲

目录

一. libcurl 库下载

二. openssl库的下载

下载地址

三. libcurl 库的编译安装

四. libcurl库的使用

4.1 初始化libcurl库

4.2 初始化CURL句柄

4.3 设置传输选项

4.3.1 CURLOPT_URL                             设置访问哪个URL网站

4.3.2  CURLOPT_HTTPHEADER           设置http头部字段

4.3.3 CURLOPT_WRITEFUNCTION,CURLOPT_WRITEDATA

CURLOPT_WRITEFUNCTION

CURLOPT_WRITEDATA

3.3.4 CURLOPT_HEADERFUNCTION,CURLOPT_HEADERDATA

4.4 执行传输任务

4.5 释放资源

五. 基本的http GET/POST操作

六. http实现人脸识别

 代码

编译


一. libcurl 库下载

Release 7.71.1 · curl/curl (github.com)

二. openssl库的下载

HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

llibcurl默认安装完后是只支持http协议而不支持https协议的。而我们进行访问人脸识别的api是要验证你的id和secret的,所以还需要下载安装openssl库。

下载地址

wget https://www.openssl.org/source/openssl-fips-2.0.14.tar.gz

三. libcurl 库的编译安装

步骤一:首先读取README中的内容,这是一个介绍文档

通过此文档我们知道了,要了解如何使用curl,请阅读curl.1手册页或MANUAL文档。要了解如何安装curl,请阅读INSTALL文档。所有这些文档以及更多内容都可以在docs/目录中找到。

步骤二:进入到docs目录中,查看curl.1手册,发现没有什么看的

步骤三:查看INSTALL手册,发现这个手册让我们去看INSTALL.md文档

步骤四:查看INSTALL.md文档

第三步为可选项,所以大概可以分为三步,配置——>编译——>安装(把编译的结果拷贝到相关文件夹底下)

步骤五:配置

./configure --prefix=$PWD/_install --host=arm-aarch64-none-linux-gnu-gcc //如果要交叉编译
./configure --prefix=$PWD/_install --with-ssl//无需交叉编译

--prefix可以指定要安装的路径,如果你不想安装到/usr/local

--host可以指定交叉编译工具

--with-ssl 指定需要https服务

步骤六:编译

make

步骤七:安装

make install

安装完毕后就能看到_install文件夹了 

可以看到有关于此库的头文件等内容都包含到/_install/include/文件夹,而我们需要的共享库文件和静态库文件都在/_install/lib/下

四. libcurl库的使用

4.1 初始化libcurl库

CURLcode curl_global_init(long flags);
/*
参数:flags

CURL_GLOBAL_ALL                      //初始化所有的可能的调用。
CURL_GLOBAL_SSL                      //初始化支持 安全套接字层。
CURL_GLOBAL_WIN32                    //初始化win32套接字库。
CURL_GLOBAL_NOTHING                  //没有额外的初始化。
*/

这个函数只能使用一次(在调用curl_global_cleanup() 函数后仍然可再用),如果这个函数在curl_easy_init()函数调用时还没调用,它讲由libcurl库自动调用,所以多线程下最好主动调用该函数以防止在线程中curl_easy_init()时多次调用。

4.2 初始化CURL句柄

CURL *curl_easy_init();

类似于socket编程,得到一个套接字

4.3 设置传输

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@尘音

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值