libCurl 初步认识 - cur easy
cur easy接口简洁明了,主接口4个,辅接口5个。
主接口
初始化 + 配参数 + 执行 + 销毁
初始化
CURL* curl_easy_init()
获得CURL句柄,返回值需要判空。
配参数
CURLcode curl_easy_setopt(CURL*, CURLoption,...)
CURLoption是枚举,指定配参数类型。
可变参数为具体配置值。
参数分类为五种:LONG整数值类型、OBJECTPOINT对象指针类型、STRINGPOINT字符串类型、FUNCTIONPOINT函数指针类型、OFF_T其他类型
执行
CURLcode curl_easy_perform(CURL*)
依照配参数执行网络请求
销毁
void curl_easy_cleanup(CURL*)
释放创建的句柄
辅接口
取参数 + 克隆CURL + 重置CURL + 网络收数据 + 网络发数据
取参数
CURLcode curl_easy_getinfo(CURL*,CURLINFO,...)
获取CURL运行中的中间数据(上传下载速度、已完成大小等)
CURLINFO为枚举,指定取参数的类型。
克隆CURL
CURL* curl_easy_duphandle(CURL*)
仅克隆内部数据和配置的参数,过程状态数据不克隆。
重置CURL
void curl_easy_reset(CURL*)
重置CURL内部数据和配置到初始的默认参数,使得指定CURL回到创建时候的状态。
网络收数据
CURLcode curl_easy_recv(CURL*,void* buff, size_t buffLen, size_t* recvLen)
从指定CURL句柄接受数据,放入指定的数据缓冲区中。
buff 数据缓冲区
buffLen 缓冲区大小
recvLen实际接受到的数据大小
网络发数据
CURLcode curl_easy_send(CURL*, const void* buff, size_t buffLen, size_t* sendLen)
从指定CURL发送缓冲区数据给服务端
buff数据缓冲区
buffLen缓冲区大小
sendLen 实际发送出去的数据大小
libCurl 初步认识 - cur easy的更多相关文章
- libcurl教程
名称 libcurl 的编程教程 目标 本文档介绍使用libcurl编程的一般原则和一些基本方法.本文主要是介绍 c 语言的调用接口,同时也可能很好的适用于其他类 c 语言的接口. 跨平台的可移植代码 ...
- Libcurl多线程crash问题(cento)
cento :http://blog.csdn.net/delphiwcdj/article/details/18284429 1 问题背景 后台系统有一个单线程的http接口,为了提高并发处理能力, ...
- linux c libcurl的简单使用(转)
curl是Linux下一个非常著名的下载库,通过这个库,可以很简单的实现文件的下载等操作.看一个简单的例子: #include <curl/curl.h> #include <std ...
- cocos2dx libcurl
转自:http://www.himigame.com/curl-libcurl/878.html 本篇介绍使用libcurl编程的一般原则和一些基本方法.本文主要是介绍 c 语言的调用接口,同时也可能 ...
- Libcurl细说
libcurl教程 原文地址:http://curl.haxx.se/libcurl/c/libcurl-tutorial.html 译者:JGood(http://blog.csdn.net/J ...
- 笔记整理--LibCurl开发
LibCurl开发_未了的雨_百度空间 - Google Chrome (2013/7/26 21:11:15) LibCurl开发 一:LibCurl 编程流程1.调用curl_global_ini ...
- curl 基本使用简介
curl是Linux下一个非常著名的下载库,通过这个库,可以很简单的实现文件的下载等操作.看一个简单的例子: #include <curl/curl.h> #include <std ...
- lamp与lnmp的选择
lnmp和lamp业务上的不同 由于二者仅仅是区别在于web的选择,nginx更高效,占用资源更少,详情区别查看LNMP环境应用实践 lnmp和lamp安装上的不同 生产环境中,可能会遇到lamp架构 ...
- [译]libcurl_tutorial
Handle the Easy libcurl To use the easy interface, you must first create yourself an easy handle. Yo ...
随机推荐
- 协议类接口 - NAND
一.引脚的含义 先看下nand flash是怎么接的,如下所示便为某一款nand存储芯片的引脚图.发现其连地址信号都没有.那么是如何访问地址数据的呢? 查阅该nand flash的数据手册可得其各个引 ...
- jQuery添加标签实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Java并发编程(十一)常用工具
Java为开发提供了很多有用的工具类,这些工具类可以帮助我们更加高效的编写并发程序,本篇我们将介绍这些实用工具的用法. ThreadLocal ThreadLocal类用于解决多线程共享一个变量的问题 ...
- Java并发编程(六)原子性与易变性
原子性 原子是最小单元.不可再分的意思.原子性是指某个操作在获取CPU时间时,要么就给它足够时间,让这个操作执行完,要么就不执行这个操作,执行时不能出现上下文切换(把CPU时间从一个线程分配到另一个线 ...
- RHS 和 LHS
不成功的的RHS 引用会导致抛出 ReferenceError异常 不成的的LHS 引用会导致自动隐式地创建一个全局变量(非严格模式下) function foo(a) { var b = a; ...
- SQL中的CONVERT();cast()函数
SQLSERVER中CONVERT函数格式: CAST (expression AS data_type) 参数说明: expression:任何有效的SQLServer表达式. AS:用于分隔两个参 ...
- Ubuntu16.04 解决matplotlib乱码或者中文显示不了的问题(可用)
一. 下载字体 SimHei.ttf 复制到linux字体库中 sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf 二.查看matplotlib配置 In ...
- CentOS7 minimal(最小化安装)后增加的软件安装
1.net-tools 安装,因为习惯使用ifconfig命令 2.wget安装,下载工具必不可少 3.vim安装,相比于vi个人更喜欢vim 4.yum-plugin-priorities安装,用于 ...
- PHP 好用第三方库
PHP 好用第三方库 whoops 更好的php错误报告库 [github]:https://github.com/filp/whoops Whoops是一个易于处理和调试错误的PHP库 .它提供基于 ...
- 自己用原生JS写的轮播图,支持移动端触摸滑动,分页器圆点可以支持mouseover鼠标移入和click点击,高手看了勿喷哈
自己用原生JavaScript写的轮播图,分页器圆点按钮可支持click点击,也可支持mouseover鼠标悬浮触发,同时支持移动端触摸滑动,有兴趣的友友可以试试哈,菜鸟一枚,高手看了勿喷,请多多指正 ...