修复HttpServer字符编码问题并增强超时处理
主要修改: - 修复HttpServer.cpp中的乱码注释导致的编译错误 - 转换文件为CRLF行尾符,添加UTF-8 BOM确保Visual Studio兼容性 - 增强Socket超时处理:添加接收/发送超时30秒配置 - 更新Config.h添加SOCKET_RECV_TIMEOUT_MS和SOCKET_SEND_TIMEOUT_MS常量 - 完善异常处理机制,确保服务线程稳定性 技术细节: - 解决乱码注释:OPTIONS预检请求处理、查找路由处理器等10处注释 - 网络稳定性:防止recv/send操作无限阻塞导致服务不响应 - 文件编码标准化:符合项目其他文件的编码规范 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
0e98285a74
commit
e8491eb419
13
CLAUDE.md
13
CLAUDE.md
@ -72,13 +72,20 @@ MFCCreoDll/
|
||||
### ✅ 已完成模块
|
||||
|
||||
#### 模块1: 基础HTTP服务器 (完成)
|
||||
**功能:** HTTP服务器框架,支持路由注册和请求处理
|
||||
**功能:** HTTP服务器框架,支持路由注册和请求处理,增强了超时处理机制
|
||||
**文件:** HttpServer.h, HttpServer.cpp, Config.h
|
||||
**测试状态:** ✅ 编译成功,功能测试通过
|
||||
**测试状态:** ✅ 编译成功,功能测试通过,已修复字符编码问题
|
||||
**API端点:**
|
||||
- `/test` - 服务器连通性测试
|
||||
- `/show_message?text=消息` - 在Creo中显示消息
|
||||
|
||||
**技术细节:**
|
||||
- 使用Windows Socket API实现HTTP服务器
|
||||
- 支持路由注册和自定义处理函数
|
||||
- 增强的超时处理:Socket接收/发送超时30秒
|
||||
- 完善的异常处理机制,确保服务线程稳定
|
||||
- 解决了字符编码问题,确保Visual Studio编译兼容性
|
||||
|
||||
#### 模块2: Creo状态检测 (完成)
|
||||
**功能:** Creo连接状态和模型状态实时检测
|
||||
**文件:** CreoManager.h, CreoManager.cpp
|
||||
@ -718,6 +725,8 @@ Web前端 -> HTTP API (快速查询) -> CreoManager -> Creo
|
||||
26. **Visual Studio编译错误** - 解决PathDeleteManager.cpp的文件编码和行尾符问题
|
||||
27. **CRLF行尾符兼容性** - 转换Unix LF为Windows CRLF,解决Visual Studio编译器解析问题
|
||||
28. **UTF-8 BOM标准化** - 添加UTF-8 BOM确保与项目其他文件编码一致
|
||||
29. **HttpServer字符编码崩溃** - 修复HttpServer.cpp中乱码注释导致的语法错误,确保编译通过
|
||||
30. **Socket超时处理增强** - 实现Socket接收/发送超时机制,防止网络请求阻塞导致服务不稳定
|
||||
|
||||
### 下一步计划
|
||||
|
||||
|
||||
2
Config.h
2
Config.h
@ -13,6 +13,8 @@ public:
|
||||
// 超时配置
|
||||
static const int HTTP_TIMEOUT_MS = 30000; // 30秒
|
||||
static const int WEBSOCKET_TIMEOUT_MS = 300000; // 5分钟
|
||||
static const int SOCKET_RECV_TIMEOUT_MS = 30000; // Socket接收超时30秒
|
||||
static const int SOCKET_SEND_TIMEOUT_MS = 30000; // Socket发送超时30秒
|
||||
|
||||
// 缓冲区大小
|
||||
static const int BUFFER_SIZE = 4096;
|
||||
|
||||
BIN
HttpServer.cpp
BIN
HttpServer.cpp
Binary file not shown.
Loading…
Reference in New Issue
Block a user