libcurl 7.66 源码 附上Vc 源码

版本使用了7.66 没有用最新的,测试的时候发现7.66以后的版本每次访问都会有1~3条本地(127.0.0.1)的连接和发送数据,不知道是什么问题

支持 HTTP/HTTPS/WebSocket/zlib (WebSocket 模拟出来的)

其他的协议都去掉了,SSL由openssl换成SSPI 文件小的很多

libcurl 7.66 源码 附上Vc 源码.png

修改内容

增加 curl_slist_add 以替代 curl_slist_append

curl_slist_append 接口在添加的时候没有检查重复和覆盖的功能

添加相同的头信息后发送的时候会有多条头信息

curl_slist_add  添加的时候会检查重复并覆盖,删除重复的头

添加 Curl_Perform 以替代 curl_easy_perform

可实现提交取返回一次性完成,不需要自己设置回调,处理数据

增加上传/下载进度的功能,可实现获取实时进度

CURL本来不支持 WebSocket 协议

使用了模拟的方法 实现了 WebSocket 协议

使用 CURLOPT_CONNECT_ONLY 连接服务器成功后

构造请求头发送后获取返回的数据,判断是否是 WebSocket

之后创建线程,循环获取服务器返回的数据,

发送和接收到的数据 使用 WebSocket 协议进行组包和拆包,得到实际的数据

访问的 URL,把 WS/WSS 替换成 HTTP/HTTPS 即可

没有做长连接测试,不知道是否支持

WebSocket 只做了简单是处理,可能有BUF,有能力的可以完善下

支持多线程,多线程循环访问没有出错

 libcurl.rar (179 K) 下载次数:136

Vc 源码

 curl-7.66.rar (3591 K) 下载次数:67

项目在 projects\Windows 文件夹里

我使用的是 Vc14(VS2015),Vc14-是原始未修改的

Vc10(VS2010,生成的文件更小),也是修改的,可以用,Vc10-是原始未修改的

相关文件下载地址
©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注