当前位置: 首页 > news >正文

【文字三国志:第四篇】天命重构,后端 API 设计文档

第一章:整体架构

1.1 设计理念

本项目的后端 API 采用Next.js 13 App RouterRoute Handlers能力构建。你可以把它理解为:每个 API 端点都是一个独立的“小服务”,它们共同组成了一个完整的游戏后端。

所有业务接口都统一放在/api/game这个“大门”下,这样做的好处是:

  • 路径清晰:一眼就能看出这是游戏相关的功能
  • 便于管理:相关的功能模块集中存放
  • 易于扩展:新增功能只需在game下新建目录

1.2 技术架构图

HTTP Request

验证通过

验证失败

参数校验

校验失败

校验通过

读取操作

命中

未命中

写入操作

完成后

SSE事件

数据

统一格式

客户端

鉴权中间件

Route Handlers
src/app/api/game/*/route.ts

返回401错误

Zod Schema

返回400错误

业务处理层

LRU缓存

返回结果

Prisma + PostgreSQL

事务保证

实时推送

1.3 目录结构说明

src/app/api/game/ ├── start/ # 游戏初始化 │ └── route.ts ├── action/ # 玩家动作 │ └── route.ts ├── combat/ # 战斗日志 │ └── route.ts ├── achievements/ # 成就系统 │ └── route.ts ├── alliances/ # 联盟系统 │ └── route.ts ├── policy/ # 政策系统 │ └── route.ts └── events/ # 实时事件 └── route.ts

每个route.ts文件都保持精简,只做三件事:校验身份 → 校验参数 → 调用核心逻辑


第二章:通用约定规范

2.1 HTTP 方法使用规范

方法使用场景示例
GET查询数据,不改变服务器状态查询联盟列表、获取政策详情
POST创建资源或触发动作提交战斗指令、解锁成就
PUT/PATCH更新现有资源修改玩家配置
DELETE删除资源退出联盟(少数情况)

2.2 统一的返回格式

所有的 API 都遵循相同的“包装格式”,就像快递包裹一样:

// 成功时{success:true,data:{/* 具体的业务数据 */}}// 失败时{success:false,error:"具体的错误信息"}

2.3 鉴权机制

验证服务API Gateway客户端验证服务API Gateway客户端
http://www.jsqmd.com/news/913832/

相关文章:

  • Jetson Orin Nano到手后,除了刷机,用jtop监控性能的完整配置流程
  • 保姆级教程:用Python+Open3D复现Removert算法,搞定动态SLAM点云预处理
  • Codesys电子凸轮实战:手把手教你用禾川PLC和SoftMotion库搭建飞剪程序
  • 别再纠结驱动了!Java直连网络打印机(IP+端口9100)打印PDF保姆级教程
  • 别再死记硬背公式了!用Python的NumPy和Matplotlib,5分钟带你直观理解最小二乘法
  • 游戏开发实战:用SAT算法搞定Unity/Unreal中复杂3D模型的碰撞检测(附C++/C#代码)
  • 告别raspistill:在树莓派Bookworm系统上配置CSI摄像头并玩转libcamera命令
  • 避开遥感地类分析的那些“坑”:一次南京江北新区土地利用变化研究的复盘与思考
  • Unity手游开发避坑:90Hz安卓机锁45帧?手把手教你用Surface.setFrameRate强制60帧
  • TVA 对 CV 的代际超越逻辑(10)
  • 2026年当下广西厂房装修服务团队选择标准深度解析:聚焦南宁华兴装饰工程有限公司 - 2026年企业资讯
  • 微信群有投票功能吗怎么弄|西瓜评选实操教程 - 投票小程序
  • 【AI培训中台-管理端-内容管理】
  • 手把手教你逆向拼多多H5/Temu的anti_content参数(附完整JavaScript代码)
  • 告别复杂参数!用Fooocus的‘Style’和‘Negative Prompt’快速生成高质量AI图片
  • 别让jbd2偷走你的磁盘性能:实战排查Ext4文件系统IO飙升(附CentOS 6/7解决方案)
  • 轻松搞定论文:6款2026年顶尖AI写论文工具深度横评
  • UE5.1+ControlRig避坑实录:从创建控制器到驱动骨骼,新手最常遇到的3个报错及解决方法
  • 告别点灯:用STM32CubeMX和WS2812B打造你的第一个桌面氛围灯项目(附完整工程)
  • 2026年4月加注装置品牌找哪家,移动式加油站/LNG撬装加气装置/撬装加油装置/船舶甲醇燃料加注站,加注装置厂家选哪家 - 品牌推荐师
  • 手把手教你写一个QQ音乐免费下载的油猴脚本(附完整源码与常见问题排查)
  • 用Python+遗传算法搞定物流配送路线规划:一个外卖小哥的实战代码分享
  • 从依赖报错到完美汉化:在Ubuntu 20.04/22.04上安装配置Beyond Compare 4的完整避坑记录
  • 别只调占空比了!GD32F303的PWM呼吸灯,这样调频率和死区才更丝滑
  • 别再死记硬背了!一张图搞懂CRC16的7种标准(CCITT、MODBUS、X25等)区别与应用场景
  • 从“Turbo”这个名字说起:聊聊LTE里这颗老当益壮的纠错码心脏
  • 别再截图了!Fluent PBM后处理数据导出到Origin的保姆级教程(含Number Density详解)
  • 用STM32CubeMx和DMA搞定WS2812B灯带:从单灯测试到彩虹流水灯实战(附完整代码)
  • 从FPU到SSE:x86汇编浮点计算演进与性能调优浅谈
  • 呼市钢结构别墅怎么选?4大维度甄选本地口碑靠谱厂家,农村别墅自建房/景区房屋/农村自建别墅,钢结构别墅厂家有哪些 - 品牌推荐师