火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2320|回复: 29
打印 上一主题 下一主题

[类库封装] 星火模块,新版yyjson,curl,quickjs...

[复制链接]

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
跳转到指定楼层
楼主
发表于 2024-1-27 23:34:10 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 aixunsoft 于 2024-1-27 23:42 编辑

星火模块下载.zip (814 Bytes, 下载次数: 93)
除能直接调用源码的库,都编译了8个版本,win32,x64,调试版,发布版,动态库,静态库,所以模块安装包体积比较大,无法直接上传,放到网盘了。编译器按需编译,只有用到的东西才会编译进自己的程序,体积无需担心。
除了第三方库带的lib和dll文件,全部都为源码,无其他可执行文件。可自行更改源码,封装不易,如果二次发行请注明出处。

由于官方找人封的第三方库都比较老了,所以决定自己更新一些常用库,为了火山的完整不能直接修改老库,所以决定重新封一个库,并且不定期更新。
目前更新了的库,目前封装的第三方库都是当前时间最新的稳定版本。

1.yyjson
命令几乎和火山带的yyjson库一致
2.curl(支持HTTP1.1,2.0,3.0,支持gzip,deflate, br解压,支持websocket)
全新封装,只封装了HTTP和WS,其他协议未封装
3.QuickJS(小而强大的JS引擎),这个是新增,不是更新,应该是火山首发。
由于火山目前不支持C++20,而QuickJS使用了C++20语法,所以封装成了库而不是直接调用源码,只封装了执行js和绑定自己的方法,使用事件反馈方法调用,使用简单
4.接下来准备封装一个HTTP服务端,可能选择HP或者ngtcp2,有兴趣的朋友可以一起参与封装好用的库

QuickJS.png (28.97 KB, 下载次数: 55)

QuickJS.png

curl.png (27.11 KB, 下载次数: 53)

curl.png
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
沙发
 楼主| 发表于 2024-1-28 22:38:48 | 显示全部楼层
wangvoldp 发表于 2024-1-28 15:05
curl置DNS首选服务器加下呗, 还有置域名指定IP  CURLOPT_RESOLVE

已添加

回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
板凳
 楼主| 发表于 2024-1-28 22:40:02 | 显示全部楼层
火绒 发表于 2024-1-28 12:57
可以加到望望的升级工具里吗?

不知道他收不收
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
地板
 楼主| 发表于 2024-1-28 22:41:07 | 显示全部楼层
本帖最后由 aixunsoft 于 2024-1-29 00:05 编辑

CURL版本:libcurl/8.5.0 LibreSSL/3.8.2 zlib/1.3 brotli/1.1.0 c-ares/1.25.0 nghttp2/1.59.0 ngtcp2/1.2.0 nghttp3/1.1.90
2024-01-28
HTTP类和WS类新增指定IP访问,新增自定义DNS,修复WS类连接断开后协议头list没释放的BUG
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
5#
 楼主| 发表于 2024-1-28 23:12:43 | 显示全部楼层
wangvoldp 发表于 2024-1-28 22:54
置DNS编译CURL时需要开启c-ares的,不然这个命令再设置时会执行失败的

已经开了c-ares的,并且我都测试过了
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
6#
 楼主| 发表于 2024-1-29 12:33:47 | 显示全部楼层
chenfeng0614 发表于 2024-1-29 09:27
大佬QQ号多少,我拉你进望望QQ群

我有他QQ ,等再更新一段时间我去问问他
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
7#
 楼主| 发表于 2024-1-29 14:12:41 | 显示全部楼层
2024-01-29 还是之前的下载地址
HTTP类默认开启连接共享,如果同一个对象中同域名中途需要修改指定IP,需要重新关闭或者重新开启(会清空之前连接)连接共享,不然可能会用到之前的连接导致切换IP失败。
新增证书相关设置
新增HTTP响应取连接IP,HTTP响应.IP
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
8#
 楼主| 发表于 2024-1-30 01:04:59 | 显示全部楼层
2024-01-30 原地址下载
重新封装CURL,换了新的写法,有一些修改,具体看样例
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
9#
 楼主| 发表于 2024-2-26 14:42:17 | 显示全部楼层
xuezhq 发表于 2024-2-25 13:39
cURL 无法使用带证书的SSL请求,是否可以沟通一下,望加WX 2208630

设置了客户端证书路径后访问失败吗?访问失败的话可以取出错误码看一下是什么错误
回复

使用道具 举报

9

主题

28

帖子

275

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
275
10#
 楼主| 发表于 2024-3-1 17:50:05 | 显示全部楼层
wangvoldp 发表于 2024-2-26 14:51
建议你的curl 模仿官网的方式, 再加几个简单方法, 这样大家愿意用 官网也很大概率会收录, 现在这样要什么全 ...

官方封装了太多的命令了,我没那么多时间精力去封装,只封装了常用的,可以尝试直接更新官方库的库文件,或者让官方更新一下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-19 22:59 , Processed in 0.100929 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表