01
Flask 基础入门
搭建第一个 Flask 应用,理解 WSGI 协议、应用上下文与请求上下文机制,掌握 Flask 核心配置与应用工厂模式。
7 课时
1.1Flask 简介与安装微框架理念、pip install、虚拟环境配置
1.2WSGI 协议原理Web 服务器网关接口、environ/start_response
1.3创建第一个应用app = Flask(__name__)、路由绑定、运行服务器
1.4配置管理config 字典、环境变量、配置类
1.5应用工厂模式create_app 函数、测试友好架构
1.6调试模式与日志debug=True、logging 模块、日志级别
1.7Flask 项目模板标准目录结构、requirements.txt、.env
02
路由与视图
深入 Flask 路由系统,学习动态路由参数、HTTP 方法限定、URL 构建、蓝图路由分组与请求钩子(before_request / after_request)。
7 课时
2.1URL 路由规则@app.route 装饰器、URL 字符串规则
2.2动态路由参数int/float/string/path 类型转换器
2.3HTTP 方法限定methods=['GET','POST']、GET/POST/PUT/DELETE
2.4URL 构建 url_for动态参数传递、外部 URL、蓝图端点
2.5蓝图 Blueprint模块化路由、register_blueprint、URL 前缀
2.6请求钩子 before/afterbefore_request/after_request/teardown
2.7错误处理 abortabort(404)、errorhandler 装饰器、自定义错误页
03
Jinja2 模板引擎
掌握 Jinja2 模板语法、模板继承与宏、上下文处理器、自定义过滤器,以及 CSRF 保护和安全的 HTML 渲染实践。
6 课时
3.1模板语法基础{{ 变量 }}、{% 标签 %}、{# 注释 #}
3.2变量与过滤器upper/lower/length/default、管道语法
3.3控制结构 if/for{% if %}{% for %}{% endif %}{% endfor %}
3.4模板继承 extends{% extends %}{% block %}、模板层级设计
3.5宏 macro 定义{% macro %}、可复用组件、宏导入
3.6CSRF 保护WTF-CSRFTokenField、跨站请求伪造防护
04
表单与验证
使用 WTForms 构建安全表单,实现数据验证、文件上传处理、Flash 消息机制,以及前后端表单交互的完整流程。
6 课时
4.1WTForms 基础Form 类、字段类型、render_field
4.2内置验证器DataRequired/Length/Email/EqualTo
4.3自定义验证validate_field、自定义验证函数
4.4文件上传处理FileField/UploadSet、安全文件名、大小限制
4.5Flash 消息机制flash()、get_flashed_messages()、消息分类
4.6表单安全实践CSRF 保护、XSS 防护、输入消毒
05
数据库 ORM
使用 Flask-SQLAlchemy 操作数据库,学习模型定义、关系映射、CRUD 操作、迁移管理(Flask-Migrate)与数据库连接池配置。
8 课时
5.1SQLAlchemy 基础Flask-SQLAlchemy 集成、数据库 URI 配置
5.2模型定义与字段Column/Integer/String/DateTime/ForeignKey
5.3CRUD 操作add/commit/query/delete、事务管理
5.4关系映射 relationshipone-to-many/many-to-many、lazy 加载
5.5数据库迁移 Flask-Migrateflask db init/migrate/upgrade、版本控制
5.6连接池配置SQLALCHEMY_POOL_SIZE/MAX_OVERFLOW、连接回收
5.7查询优化技巧joinedload/subqueryload、避免 N+1 问题
5.8数据库测试策略测试数据库隔离、fixtures、工厂模式
06
项目结构与蓝图
掌握 Flask 大型项目架构,使用蓝图组织模块化代码,集成日志系统、错误处理中间件、跨域支持与项目配置管理。
6 课时
6.1蓝图架构设计模块划分、蓝图嵌套、URL 前缀管理
6.2日志系统配置logging 配置、文件日志、日志轮转
6.3全局错误处理errorhandler 装饰器、404/500 错误页
6.4CORS 跨域支持Flask-CORS、配置白名单、预检请求
6.5环境配置管理config.py、.env 文件、多环境配置
6.6项目模板生成Cookiecutter、标准项目结构、快速启动
07
FastAPI 入门
快速上手 FastAPI,理解 ASGI 服务器、类型注解驱动路由、自动生成 OpenAPI 文档(Swagger UI)与自动数据校验。
8 课时
7.1FastAPI 简介与安装高性能 ASGI 框架、pip install fastapi
7.2ASGI 服务器原理Uvicorn/Hypercorn、异步请求处理
7.3路由系统详解@app.get/post/put/delete、路径参数
7.4请求与响应处理Query/Path/Body 参数、Response 模型
7.5OpenAPI 文档自动生成Swagger UI/ReDoc、schema 生成
7.6数据校验 PydanticBaseModel、字段类型、验证规则
7.7中间件开发BaseHTTPMiddleware、CORS/日志中间件
7.8第一个 FastAPI 项目CRUD API 完整实现、测试与部署
08
Pydantic 数据验证
深入 Pydantic V2 模型,学习字段验证、自定义校验器、嵌套模型、序列化/反序列化与复杂数据结构的类型安全处理。
7 课时
8.1Pydantic V2 基础BaseModel、字段定义、默认值、必填字段
8.2字段类型与验证str/int/float/List/Dict、ge/le/max_length
8.3自定义校验器@field_validator/@model_validator、before/after
8.4嵌套模型模型嵌套、List[Model]、复杂结构验证
8.5序列化与反序列化model_dump/model_validate、JSON 互转
8.6复杂类型处理Union/Optional/Any、Literal 类型
8.7性能优化技巧model_config、性能对比、大数据处理
09
依赖注入系统
掌握 FastAPI 的 Depend 依赖注入机制,实现数据库会话管理、权限认证、参数复用与复杂的依赖链组合。
7 课时
9.1Depend 基础用法Depends()、函数依赖、类依赖
9.2数据库会话依赖async session、yield 依赖、事务管理
9.3权限认证依赖HTTPBearer、OAuth2PasswordBearer、角色检查
9.4参数复用 Depends共享依赖、参数注入、Query/Path 委托
9.5依赖链组合多层依赖嵌套、依赖图、执行顺序
9.6全局依赖配置app.dependency_overrides、中间件级别依赖
9.7测试中的依赖覆盖dependency_overrides、Mock 依赖、测试隔离
10
异步编程实战
深入 asyncio 协程与 async/await,对比 Flask 与 FastAPI 的并发模型,使用 aiohttp 和 asyncpg 实现高并发异步 I/O。
8 课时
10.1asyncio 基础概念事件循环、协程、任务、Future
10.2协程与 awaitasync def、await 表达式、协程调度
10.3Task 与并发asyncio.create_task/gather/wait、并发控制
10.4aiohttp 异步 HTTPaiohttp.ClientSession、连接池、超时设置
10.5asyncpg 异步数据库asyncpg 连接池、异步查询、事务
10.6并发模型对比Flask 同步 vs FastAPI 异步、适用场景
10.7异步最佳实践避免阻塞、超时处理、信号量控制
10.8异步项目实战异步爬虫/API 网关、性能测试与优化
11
RESTful API 设计
系统学习 REST 架构风格,包括资源建模、状态码规范、分页过滤排序、JWT 认证授权、API 版本管理与限流策略。
9 课时
11.1REST 架构原则资源/动词/状态码、REST 约束与约束
11.2资源建模方法URL 设计、嵌套资源、统一接口
11.3HTTP 状态码规范2xx/3xx/4xx/5xx、正确使用场景
11.4分页设计offset/cursor 分页、PageNumber/Cursor
11.5过滤与排序查询参数过滤、排序、字段选择
11.6JWT 认证授权Access Token/Refresh Token、签发与验证
11.7API 版本管理URL/Header 版本、向后兼容策略
11.8限流与节流滑动窗口/令牌桶、Rate Limiting 实现
11.9API 测试策略pytest/httpx、集成测试、契约测试
12
部署与微服务架构
使用 Docker 容器化部署应用,配置 Nginx 反向代理、Gunicorn/Uvicorn 生产服务器,搭建微服务间通信与 API 网关。
9 课时
12.1Docker 容器化Dockerfile、docker-compose、镜像构建
12.2Nginx 反向代理配置upstream、proxy_pass、静态文件服务
12.3Gunicorn/Uvicorn 生产部署Worker 数量、超时配置、优雅重启
12.4微服务通信 gRPCprotobuf 定义、流式通信、性能对比 REST
12.5API 网关 Kong路由/认证/限流、插件系统、负载均衡
12.6服务发现 Consul服务注册/健康检查、KV 存储、DNS 解析
12.7配置中心集中配置管理、动态更新、环境隔离
12.8监控告警 Prometheus指标采集、Grafana 看板、告警规则
12.9生产环境最佳实践HTTPS、安全头、日志收集、备份策略
构建高性能 Web 应用
88 课时系统学习 Flask 与 FastAPI
← 返回课程列表