重构Api接口到Msg
This commit is contained in:
32
server/.github/instructions/development-tasks.md
vendored
32
server/.github/instructions/development-tasks.md
vendored
@@ -80,6 +80,14 @@ Roguelike 游戏服务端开发任务追踪
|
||||
- [x] 移动API实现 (ApiMove.ts)
|
||||
- [x] 位置验证和边界检查
|
||||
- [x] 登录时广播玩家加入
|
||||
- [x] **架构重构:从HTTP API到WebSocket消息** (2025-12-18)
|
||||
- [x] 删除旧的API实现 (src/api目录)
|
||||
- [x] 删除旧的API协议 (PtlLogin.ts, PtlMove.ts, PtlSend.ts)
|
||||
- [x] 创建消息协议文件 (MsgReq*/MsgRes*)
|
||||
- [x] 创建消息处理器 (src/msg目录)
|
||||
- [x] 更新服务器配置为消息监听模式
|
||||
- [x] 重新生成serviceProto.ts文件
|
||||
- [x] 修复所有消息名称映射问题
|
||||
|
||||
### 进行中
|
||||
- 等待下一阶段开发...
|
||||
@@ -87,6 +95,27 @@ Roguelike 游戏服务端开发任务追踪
|
||||
### 待办事项
|
||||
- 按照上述规划顺序实施开发
|
||||
|
||||
## 重要架构说明
|
||||
|
||||
### 🚨 消息协议设计规范 (2025-12-18更新)
|
||||
**本项目使用WebSocket服务器,后续所有接口设计必须使用消息(Message)方式,而非API方式!**
|
||||
|
||||
#### 消息命名规范:
|
||||
- 请求消息:`MsgReq{功能名}.ts` (如:MsgReqLogin.ts)
|
||||
- 响应消息:`MsgRes{功能名}.ts` (如:MsgResLogin.ts)
|
||||
- 广播消息:`Msg{事件名}.ts` (如:MsgPlayerMove.ts)
|
||||
|
||||
#### 消息处理器位置:
|
||||
- 文件位置:`src/msg/MsgReq{功能名}.ts`
|
||||
- 处理函数:使用 `MsgCall<MsgReq{功能名}>` 参数
|
||||
- 响应方式:`call.conn.sendMsg('Res{功能名}', response)`
|
||||
- 注册方式:`server.listenMsg('Req{功能名}', handler)`
|
||||
|
||||
#### 协议文件生成:
|
||||
- 使用 `npm run proto` 自动生成 `serviceProto.ts`
|
||||
- 禁止直接修改 `serviceProto.ts` 文件
|
||||
- 协议文件会自动去掉 "Msg" 前缀进行注册
|
||||
|
||||
## 技术栈
|
||||
- TSRPC 框架
|
||||
- TypeScript
|
||||
@@ -94,5 +123,6 @@ Roguelike 游戏服务端开发任务追踪
|
||||
|
||||
## 备注
|
||||
- 本文档由 AI 助手维护
|
||||
- 更新日期: 2025-12-14
|
||||
- 更新日期: 2025-12-18
|
||||
- 开发过程中会根据实际情况调整任务优先级和细节
|
||||
- **重要**:项目已从HTTP API架构迁移到WebSocket消息架构,请严格按照消息协议规范开发
|
||||
|
||||
Reference in New Issue
Block a user