FastAPI PyPI 介绍:快速入门与安装指南
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于使用 Python 3.8+ 构建 API。它基于标准的 Python 类型提示,使其代码编写快速、调试方便,并且提供了自动的交互式 API 文档。本文将引导您完成 FastAPI 的快速入门和安装过程。
为什么选择 FastAPI?
- 极高的性能: 与 Starlette (Web 部分) 和 Pydantic (数据部分) 一起,FastAPI 提供了与 NodeJS 和 Go 相媲美的性能。
- 快速开发: 得益于类型提示和自动文档,开发效率大大提高。
- 健壮性: 类型提示减少了运行时错误。
- 直观: 自动生成 Swagger UI 和 ReDoc 文档,方便测试和使用 API。
- 现代化: 完全支持异步编程 (
async/await)。
先决条件
在开始之前,请确保您的系统满足以下条件:
- Python 版本: 您需要安装 Python 3.8 或更高版本。
- 虚拟环境 (推荐): 强烈建议为每个项目使用 Python 虚拟环境来隔离依赖项,避免不同项目间的库版本冲突。
安装指南
以下是安装 FastAPI 的步骤:
1. 创建并激活虚拟环境 (可选但强烈推荐)
在您的项目目录中打开终端或命令行工具,然后执行以下命令:
-
创建虚拟环境:
bash
python3 -m venv venv
这里venv是您虚拟环境的名称,您可以根据需要更改。 -
激活虚拟环境:
- Windows:
bash
.\venv\Scripts\activate - macOS 和 Linux:
bash
source venv/bin/activate
- Windows:
激活后,您的终端提示符会显示虚拟环境的名称 (例如 (venv)), 表明您正在虚拟环境中操作。
2. 安装 FastAPI
安装 FastAPI 的推荐方式是使用 pip,并包含所有标准依赖项,例如 Uvicorn (一个 ASGI 服务器) 和其他有用的库。
bash
pip install "fastapi[standard]"
使用双引号 "fastapi[standard]" 是为了确保在不同终端和操作系统中命令都能正确执行。这个命令会自动安装 uvicorn[standard] 以及其他推荐的依赖,使您能够立即运行应用并获得完整的开发体验。
如果您只需要核心的 FastAPI 框架而没有这些可选的依赖,可以使用:
bash
pip install fastapi
然而,在这种情况下,您需要手动安装一个 ASGI 服务器 (如 Uvicorn) 才能运行您的应用程序。
快速入门:您的第一个 FastAPI 应用
安装完成后,让我们创建一个简单的 FastAPI 应用。
-
创建
main.py文件:
在您的项目目录中创建一个名为main.py的文件,并添加以下内容:“`python
from fastapi import FastAPI创建一个 FastAPI 实例
app = FastAPI()
定义一个路由,当访问根路径时会调用此函数
@app.get(“/”)
def read_root():
return {“Hello”: “World”}定义另一个路由,接收路径参数
@app.get(“/items/{item_id}”)
def read_item(item_id: int, q: str = None):
if q:
return {“item_id”: item_id, “q”: q}
return {“item_id”: item_id}
“` -
运行应用程序:
在终端中,确保您仍然处于激活的虚拟环境中,然后运行以下命令:bash
uvicorn main:app --reload
*main: 指的是main.py文件 (Python 模块)。
*app: 指的是main.py文件中创建的FastAPI()实例。
*--reload: 选项使服务器在代码更改时自动重新加载,非常适合开发。您将看到类似以下输出:
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [xxxxx]
INFO: Started server process [xxxxx]
INFO: Waiting for application startup.
INFO: Application startup complete. -
访问您的应用和 API 文档:
打开您的网络浏览器,访问:- 您的应用:
http://127.0.0.1:8000(您应该会看到{"Hello": "World"}) - 交互式 API 文档 (Swagger UI):
http://127.0.0.1:8000/docs - 替代 API 文档 (ReDoc):
http://127.0.0.1:8000/redoc
这些自动生成的文档允许您直接在浏览器中测试和查看您的 API 端点。
- 您的应用:
总结
至此,您已经成功安装了 FastAPI 并运行了您的第一个应用。FastAPI 以其高性能、易用性和强大的功能而闻名,是构建现代 Web API 的优秀选择。现在,您可以继续探索 FastAPI 的更多高级功能,如数据验证、依赖注入、安全性和数据库集成等,以构建更复杂和健壮的应用程序。