2.5 KiB
2.5 KiB
后端功能文档
项目概述
后端项目是基于Node.js的API接口服务,为微信小程序前端和Web后台管理提供数据交互支持。
技术栈
- Node.js 22+
- Express.js
- Pocketbase (数据库)
- TypeScript
- JWT (认证)
- dotenv (环境变量管理)
项目结构
back-end/
├── src/
│ ├── controllers/ # 控制器
│ ├── routes/ # 路由
│ ├── services/ # 业务逻辑
│ ├── models/ # 数据模型
│ ├── middlewares/ # 中间件
│ ├── utils/ # 工具函数
│ └── index.js # 入口文件
├── spec/ # OpenAPI规范
├── tests/ # 测试文件
├── scripts/ # 脚本文件
├── .env # 环境变量
└── package.json # 项目配置
核心功能模块
1. 认证模块
- 用户登录/注册
- JWT token生成与验证
- 权限控制
2. 用户管理
- 用户信息管理
- 密码重置
- 用户状态管理
3. 数据管理
- 数据CRUD操作
- 数据验证
- 数据统计
4. AI交互模块
- 与AI网关的集成
- RAG系统对接
- 智能问答
5. 视频服务
- 视频流处理
- 视频存储
- 视频转码
开发指南
环境搭建
- 安装依赖
npm install
- 启动开发服务器
npm run dev
- 运行测试
npm run test
代码规范
- 使用ESLint进行代码检查
- 遵循RESTful API设计规范
- 错误处理统一化
- 日志记录
路由设计
路由配置位于 src/routes/,支持RESTful API设计。
数据库操作
使用Pocketbase作为数据库,提供轻量级的数据存储解决方案。通过Pocketbase API进行数据操作,支持CRUD操作和实时数据同步。
环境变量
环境变量配置位于 .env 文件,包括:
- 服务器端口
- Pocketbase API URL
- Pocketbase认证信息
- JWT密钥
- 其他配置参数
API设计规范
响应格式
{
"statusCode": 200,
"message": "success",
"data": {}
}
错误处理
{
"statusCode": 400,
"message": "错误信息",
"data": null
}
状态码定义
- 200: 成功
- 400: 请求错误
- 401: 未授权
- 403: 禁止访问
- 404: 资源不存在
- 500: 服务器内部错误
中间件
- 认证中间件
- 日志中间件
- 错误处理中间件
- CORS中间件
安全措施
- JWT认证
- 密码加密
- 输入验证
- 防止SQL注入
- 防止XSS攻击
部署说明
详见 部署文档。