Web Rust Template 文档中心
欢迎使用 Web Rust Template 文档!本模板项目提供了生产级的 Rust Web 服务器基础架构,采用 DDD 分层设计,包含完整的认证、数据库、缓存等功能。
快速导航
按角色查找文档
前端开发者
- API 接口概览 - 快速了解所有可用的 API 接口
- 公开接口文档 - 注册、登录等公开接口的详细说明
- 前端集成示例 - JavaScript/TypeScript/React/Vue 集成代码示例
- 认证机制详解 - JWT 认证流程和最佳实践
后端开发者
- 快速开始指南 - 安装、配置和运行项目
- 项目结构详解 - DDD 分层架构说明
- DDD 架构规范 - 各层设计原则和开发规范
- 代码风格规范 - Rust 代码风格和命名规范
- Git 提交规范 - 提交信息规范和分支策略
- 测试规范 - 单元测试和集成测试指南
运维人员
文档结构
docs/
├── README.md # 本文档
├── api/ # API 接口文档
│ ├── api-overview.md # API 概览和快速参考
│ ├── authentication.md # 认证机制详解
│ ├── endpoints/
│ │ ├── public.md # 公开接口
│ │ └── protected.md # 需要认证的接口
│ └── examples/
│ └── frontend-integration.md # 前端集成代码示例
├── development/ # 开发指南
│ ├── getting-started.md # 快速开始
│ ├── project-structure.md # 项目结构详解
│ ├── ddd-architecture.md # DDD 分层架构规范
│ ├── code-style.md # 代码风格和命名规范
│ ├── git-workflow.md # Git 提交规范
│ └── testing.md # 测试规范
└── deployment/ # 部署文档
├── environment-variables.md # 环境变量配置说明
├── configuration.md # 配置文件详解
└── production-guide.md # 生产环境部署指南
核心概念
DDD 分层架构
本项目采用领域驱动设计(DDD)分层架构:
┌─────────────────────────────────────┐
│ Interface Layer (handlers) │ HTTP 处理器层
└──────────────┬──────────────────────┘
│
┌──────────────▼──────────────────────┐
│ Application Layer (services) │ 业务逻辑层
└──────────────┬──────────────────────┘
│
┌───────┴────────┐
│ │
┌──────▼──────┐ ┌─────▼──────────┐
│ Domain │ │ Infrastructure│
│ Layer │ │ Layer │
└─────────────┘ └────────────────┘
双 Token 认证机制
- Access Token:15 分钟有效期,用于 API 请求认证
- Refresh Token:7 天有效期,存储在 Redis,用于获取新的 Access Token
- Token 轮换:每次刷新会生成新的 Refresh Token,旧 Token 自动失效
多数据库支持
支持 MySQL、PostgreSQL、SQLite 三种数据库,通过简单的环境变量配置即可切换。
技术栈
| 组件 | 技术 | 版本 |
|---|---|---|
| Web 框架 | Axum | 0.7 |
| 异步运行时 | Tokio | 1.x |
| 数据库 ORM | SeaORM | 1.1 |
| 认证 | JWT | 9.x |
| 密码哈希 | Argon2 | 0.5 |
| 缓存 | Redis | 0.27 |
| 日志 | tracing | 0.1 |
快速链接
获取帮助
如果您在阅读文档时有任何疑问,请:
- 查看相关主题的详细文档
- 检查 常见问题
- 提交 Issue 到项目仓库
提示:建议按照"快速开始指南"→"API 接口文档"→"开发规范"的顺序阅读文档。