《深入浅出FastAPI》书籍大纲
第1章:FastAPI初体验——为什么选择它?
- 现代Web开发的新选择
- FastAPI vs Flask vs Django:差异对比
- 安装与环境配置一步到位
- 你的第一个API:5分钟上手
- 自动交互文档:Swagger UI初探
- 性能优势:异步编程的威力
- 项目结构最佳实践入门
第2章:请求与响应——API的对话艺术
- 路径参数:定义API的访问地址
- 查询参数:灵活的请求过滤器
- 请求体:处理复杂数据输入
- Pydantic模型:数据验证的神器
- 响应模型:控制API输出格式
- 状态码与错误处理:优雅的异常对话
- 文件上传与下载:处理二进制数据
第3章:依赖注入——解耦的艺术
- 依赖注入设计模式解析
- 简单依赖:共享业务逻辑
- 带参数的依赖:灵活配置
- 子依赖:构建依赖关系树
- 类作为依赖:面向对象实践
- 依赖缓存策略优化
- 实际案例:认证依赖实现
第4章:数据验证与类型提示
- Python类型提示深度解析
- Pydantic字段类型大全
- 自定义验证器:业务规则实现
- 数据序列化与反序列化
- 复杂嵌套模型处理
- JSON Schema生成原理
- 性能优化:验证器最佳实践
第5章:数据库集成——SQLAlchemy实战
- SQLAlchemy核心概念解析
- 模型定义:表结构的Python化
- 数据库迁移:Alembic入门
- CRUD操作完整实现
- 关系建模:一对多、多对多
- 查询优化:避免N+1问题
- 异步数据库操作实践
第6章:用户认证与授权
- 认证与授权基础概念
- JWT令牌原理与实现
- OAuth2.0集成实战
- 基于角色的访问控制(RBAC)
- 密码哈希与安全存储
- 刷新令牌机制
- 第三方登录集成
第7章:中间件与后台任务
- 中间件工作原理剖析
- 自定义中间件开发
- CORS跨域处理
- 后台任务:Celery集成
- 定时任务实现方案
- 请求生命周期管理
- 性能监控中间件
第8章:WebSocket实时通信
- WebSocket协议基础
- FastAPI WebSocket端点
- 实时聊天室实现
- 连接管理与状态维护
- 广播消息与房间概念
- 心跳检测与重连机制
- 生产环境部署要点
第9章:测试策略与质量保证
- 测试金字塔:单元、集成、E2E
- Pytest框架深度使用
- 异步代码测试技巧
- 数据库测试:事务管理
- 模拟外部依赖
- 性能测试:Locust实战
- 测试覆盖率与CI集成
第10章:部署与性能优化
- 生产环境配置管理
- Docker容器化部署
- Uvicorn与Gunicorn调优
- Nginx反向代理配置
- 数据库连接池优化
- 缓存策略:Redis集成
- 监控与日志收集
第11章:高级特性与扩展
- 自定义路由类
- 响应编码与内容协商
- WebHooks实现
- GraphQL集成
- 自定义OpenAPI文档
- 插件系统开发
- 源码阅读与贡献指南
第12章:实战项目——电商API系统
- 需求分析与架构设计
- 商品模块:分类、搜索、分页
- 购物车与订单系统
- 支付网关集成
- 库存管理系统
- 推荐算法实现
- 项目总结与优化建议