一、快速开始

1.1 安装

pip install fastapi

你还会需要一个 ASGI 服务器,生产环境可以使用 Uvicorn

pip install uvicorn

1.2 示例

创建文件 main.py,内容如下:

from fastapi import FastAPI  # FastAPI 是一个为你的 API 提供了所有功能的 Python 类。

app = FastAPI()  # 这个实例将是创建你所有 API 的主要交互对象。这个 app 同样在如下命令中被 uvicorn 所引用


@app.get("/")
async def home():
    return {"user_id": 1003}


@app.get("/shop")
async def shop():
    return {"shop": "商品信息"}

可以在控制台,通过以下命令运行服务器:

uvicorn main:app --reload
INFO:     Uvicorn running on http://127.0.0.1:8080 (Press CTRL+C to quit)
INFO:     Started reloader process [73408]
INFO:     Started server process [73408]
INFO:     Waiting for application startup
INFO:     Application startup complete

也可以直接右键运行

if __name__ == '__main__':
    import uvicorn

    uvicorn.run("main:app", host="127.0.0.1", port=8080, debug=True, reload=True)
(1)导入 FastAPI。
(2)创建一个 app 实例。
(3)编写一个路径操作装饰器(如 @app.get("/"))。
(4)编写一个路径操作函数(如上面的 def home(): ...)
(5)定义返回值
(6)运行开发服务器(如 uvicorn main:app --reload)

注意点:

uvicorn是一个ASGI的服务器,生产环境可以使用 Uvicorn

若想用debug功能,版本需要降低到0.18.xxx

1.3 检查

用浏览器打开 http://127.0.0.1:8080/
你会看到如下 JSON 响应:

{"user_id": 1003}

1.4 交互式 API 文档

现在访问 http://127.0.0.1:8080/docs。
你会看到自动生成的交互式 API 文档

fastapi有着非常棒的交互式 API 文档
API文档
可选的 API 文档
然后访问 http://127.0.0.1:8080/redoc。
你会看到另一个自动生成的文档
可选API文档

官方文档: https://fastapi.tiangolo.com
源码: https://github.com/fastapi/fastapi

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐