Files

2.5 KiB
Raw Permalink Blame History

后端功能文档

项目概述

后端项目是基于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. 视频服务

  • 视频流处理
  • 视频存储
  • 视频转码

开发指南

环境搭建

  1. 安装依赖
npm install
  1. 启动开发服务器
npm run dev
  1. 运行测试
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攻击

部署说明

详见 部署文档