black1552
|
95623f3802
|
refactor(gateway): 重构反向代理实现以支持 WebSocket 和 HTTP 请求
- 添加 gclient 和 gstr 依赖包用于 HTTP 客户端操作
- 实现新的 BuildRequest 函数,使用 gclient 处理普通 HTTP 请求
- 分离 WebSocket 请求处理到独立的 proxyWebSocket 函数
- 移除旧的 hasProtocol 函数和相关逻辑
- 添加完整的请求头和响应头复制机制
- 实现响应状态码和响应体的正确传递
- 简化 WebSocket 代理逻辑,使用标准反向代理处理
|
2026-03-06 17:00:37 +08:00 |
black1552
|
45262d8f88
|
fix(gateway): 修复代理响应头传递和JSON写入问题
- 添加 ModifyResponse 函数以正确传递原始响应头
- 实现响应头从代理服务器到客户端的完整传递
- 修复 WebSocket 升级处理中的响应写入逻辑
- 确保 JSON 数据通过 RawWriter 正确写入响应
|
2026-03-06 13:54:20 +08:00 |
black1552
|
f958579981
|
fix(gateway): 解决 WebSocket 升级和 HTTP 请求处理问题
- 使用 RawWriter() 获取原始的 http.ResponseWriter,避免 gf 框架的封装影响
- 确保代理能够正确处理 WebSocket 连接升级
- 修复了因框架封装导致的响应写入问题
|
2026-03-06 11:35:25 +08:00 |
black1552
|
737fd041a0
|
feat(gateway): 添加协议自动检测和补全功能
- 实现 hasProtocol 函数检查字符串是否包含协议前缀
- 支持 http、https、ws、wss 协议检测
- 自动为没有协议的主机地址添加相应协议前缀
- 根据请求类型判断协议:WebSocket 使用 ws,HTTP 使用 http
- 优化反向代理请求构建逻辑
|
2026-03-06 11:14:10 +08:00 |
black1552
|
969322a912
|
refactor(server): 重构网关请求代理实现
- 使用标准库 httputil.NewSingleHostReverseProxy 替代自定义 HTTP 客户端
- 移除 gclient、gcache 和相关依赖包导入
- 添加自定义 Director 函数处理目标 URL 设置
- 实现错误处理机制和 Bad Gateway 响应
- 简化 WebSocket 连接支持逻辑
- 优化请求头和响应头处理流程
|
2026-03-06 10:52:26 +08:00 |
black1552
|
f9fae10c76
|
feat(server): 添加网关代理功能
- 实现了 HTTP 请求转发功能,支持请求头和响应头的完整复制
- 添加了目标 URL 构建逻辑,处理路径和查询参数的正确拼接
- 集成了响应体读取和状态码设置功能
- 实现了 WebSocket 连接的反向代理处理
- 添加了缓存机制用于临时存储主机信息
- 集成了日志记录功能用于错误跟踪和调试
|
2026-03-06 10:31:06 +08:00 |
black1552
|
c0629b4038
|
feat(database): 将数据库连接池从 NutsDB 迁移到 SQLite
- 修改 server/ws/example.go 中的数据库连接池引用,将 m.nutsPool 替换为 m.sqlitePool
- 更新 go.mod 文件中的 Go 版本从 1.24.3 升级到 1.25.0
- 移除 nutsdb 依赖项 github.com/nutsdb/nutsdb v1.1.0
- 移除其他间接依赖包括 github.com/antlabs/stl、github.com/antlabs/timer、
github.com/bwmarrin/snowflake、github.com/cespare/xxhash/v2 等
- 添加 SQLite 相关依赖 github.com/glebarez/go-sqlite 和 github.com/glebarez/sqlite
- 更新 golang.org/x 相关包版本,包括 exp、sync、sys、text 等模块
- 在 go.sum 中同步更新所有依赖项的校验和变化
|
2026-02-27 16:35:21 +08:00 |
black1552
|
c50714e8a0
|
feat(pool): 移除BadgerDB连接池实现并集成NutsDB
- 删除pool/badger.go文件中的BadgerDB连接池相关代码
- 更新WebSocket示例移除badger目录参数依赖
- 更新TCP示例移除badger目录参数依赖
- 升级github.com/dgraph-io/badger/v4依赖从v4.2.0到v4.9.1
- 新增github.com/nutsdb/nutsdb依赖用于替代BadgerDB功能
- 添加WebSocket和TCP连接测试示例代码
- 更新多个间接依赖包版本包括ristretto、humanize、compress等
|
2026-02-27 10:46:04 +08:00 |
black1552
|
4c300374cb
|
feat(pool): 修改NewBadgerPool函数接受数据库路径参数并移除GetAllConnIDs方法
- 修改NewBadgerPool函数签名以接受badgerDir字符串参数
- 将默认数据库路径配置改为通过参数传入
- 移除GetAllConnIDs方法及其相关实现代码
- 更新TCPServer和WebSocket Manager构造函数以传递数据库路径
- 修复TCP服务器和WebSocket示例中的初始化调用
|
2026-02-27 10:06:26 +08:00 |
black1552
|
5e22f2c2c0
|
feat(pool): 添加基于BadgerDB的连接池实现
- 新增BadgerPool结构体,支持WebSocket和TCP连接类型
- 实现连接的增删改查功能,包括内存缓存机制提升性能
- 添加按类型查询连接、统计连接数量等辅助方法
- 实现清理非活跃连接的功能,支持定期维护
- 更新示例代码以处理初始化错误并改进错误处理
- 添加BadgerDB依赖及其相关间接依赖包
|
2026-02-27 09:47:23 +08:00 |
black1552
|
1eda606705
|
refactor(config): 简化配置文件创建逻辑
- 移除冗余的日志记录和文件创建操作
- 直接将YAML内容写入配置文件
- 保持配置文件创建成功的日志提示
|
2026-02-12 15:29:41 +08:00 |
black1552
|
7218ba6508
|
第一次提交
|
2026-01-30 15:51:42 +08:00 |