FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建基于 Python 的 API。它是一个开源项目,基于 Starlette 和 Pydantic 库构建而成,提供了强大的功能和高效的性能。
FastAPI 官网地址:FastAPI
FastAPI 的主要特点包括:
async
和 await
关键字),利用了 Python 的异步生态系统,提供出色的性能和吞吐量。下面的步骤将帮助你开始使用 FastAPI 构建一个简单的 Web 应用。
1、安装 FastAPI:在命令行中运行以下命令安装 fastapi
,并安装 uvicorn
:
pip install fastapi
2、创建 FastAPI 应用:在你喜欢的 IDE 编辑器中创建一个新的 Python 文件,例如fastapi-demo.py
。然后将以下代码复制到文件中:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
上面的代码创建了一个名为 app
的 FastAPI 实例,并定义了一个根路由,返回一个简单的 JSON 响应。
3、运行 FastAPI 应用:在命令行中运行以下命令启动 FastAPI 应用:
uvicorn main:app --reload
FastAPI 将在本地启动一个服务器,并监听默认端口(8000)。你可以在浏览器中访问 http://127.0.0.1:8000
,看到 {"Hello": "World"}
的响应。
4、添加更多的路由和功能:你可以继续在应用中添加更多的路由和功能,根据自己的需求进行扩展:
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}
上面的代码添加了一个名为 read_item
的新路由,它接受一个 item_id
参数和一个可选的 q
参数,并返回一个 JSON 响应。
以下是一个使用 FastAPI 构建的实践案例,能够在 IDE 编辑器中直接运行的代码。
from fastapi import 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):
return {"item_id": item_id, "q": f"接口id:{item_id}"}
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="127.0.0.1", port=8000)
复制以上代码到你的 IDE 编辑器中,并运行它。然后通过浏览器访问 http://localhost:8000/
,你将看到 {"Hello": "World"}
的响应。同样地,你也可以访问 http://localhost:8000/items/42?q=somequery
,查看带有参数的响应。
我们可以通过 Apifox 来更方便的调试 FastAPI。
如果想快速的调试一条接口,新建一个项目后,在项目中选择 “调试模式” ,填写请求地址后即可快速发送请求,并获得响应结果,上文的实践案例如图所示:
FastAPI 是一个高性能、易用且现代的 Python Web 框架,它通过使用最新的 Python 特性和异步编程,提供了快速开发 Web API 的能力。该框架不仅易于学习和使用,还具有自动生成文档、数据验证等强大功能。无论是构建小型项目还是大型应用程序,FastAPI 都是一个强大而有效的工具。
现在你已经了解了 FastAPI 的概念和使用方法,你可以访问官方网站并尝试使用 FastAPI 来构建自己的 Web 应用程序。
了解更多 FastAPI 相关使用技巧:
参考链接: