背景
- 假设要搭建一个测试平台,那么整个项目的 API 数量肯定很多个,他们不可能放在同一个文件中
- FastAPI 提供了一个方便的工具来构建应用程序,同时保持所有的灵活性
项目架构
假设结构如下
.
├── app
│ ├── __init__.py
│ ├── main.py
│ ├── dependencies.py
│ └── routers
│ │ ├── __init__.py
│ │ ├── items.py
│ │ └── users.py
│ └── internal
│ ├── __init__.py
│ └── admin.py
- main:应用程序的主入口,会添加所有子路由
- dependencies:存放应用程序要用到的依赖项
- routers:子路由,根据模块划分,比如 users 存放用户信息相关的路由,items 存放其他内容的路由
- internal:一些公共路由
APIRouter
有点像 Flask 里面的蓝图,为某个模块创建路径操作