欢迎访问宙启技术站
智能推送

使用Python和FastAPI创建RESTfulAPI

发布时间:2023-12-11 10:57:06

FastAPI 是一个为构建高性能、易于使用的 Web API 提供快速开发的 Python 框架。它基于 Python 3.7+ 的新型标准类型注释,并具备自动验证、自动文档生成和高性能特点。下面是使用 Python 和 FastAPI 创建 RESTful API 的一个例子。

首先,我们需要安装 FastAPI 和 uvicorn(用于运行 FastAPI 应用程序的 ASGI 服务器)。可以通过以下命令来安装它们:

pip install fastapi uvicorn

接下来,我们创建一个名为 main.py 的文件,并在其中编写以下代码:

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": q}

代码中定义了两个路由://items/{item_id}/ 路由返回一个简单的 JSON 响应,/items/{item_id} 路由接受一个路径参数 item_id 和一个可选的查询参数 q,并将它们包装在一个 JSON 响应中返回。

接下来,我们可以使用 uvicorn 运行这个应用程序。在命令行中运行以下命令:

uvicorn main:app --reload

运行成功后,你将在命令行中看到类似以下的输出:

Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)

现在,你的 FastAPI 应用程序已经在本地主机上的端口 8000 上运行起来了。你可以在浏览器中访问 http://127.0.0.1:8000,你将看到 {"Hello": "World"} 这样的响应。你也可以尝试访问 http://127.0.0.1:8000/items/42?q=test,你将看到 {"item_id": 42, "q": "test"} 这样的响应。

FastAPI 还提供了自动生成 API 文档的功能。你可以在浏览器中访问 http://127.0.0.1:8000/docs 来查看自动生成的 API 文档。它展示了每个路由、请求参数和响应模型,使得开发和测试 API 变得非常方便。

这只是 FastAPI 提供功能的一个简单示例。它还有很多强大的功能,例如异步支持、依赖注入、身份验证等。希望本例能帮助你开始使用 Python 和 FastAPI 创建 RESTful API。