跳到内容

教程 - 用户指南

本教程将一步一步地向您展示如何使用 FastAPI 的大部分功能。

每个部分都以前面的内容为基础,但为了便于查找,它将各个主题分开了,这样您就可以直接跳转到任何特定部分来解决您的特定 API 需求。

它还旨在作为未来的参考,以便您可以回来查看您需要的内容。

运行代码

所有代码块都可以直接复制使用(它们实际上是经过测试的 Python 文件)。

要运行任何示例,请将代码复制到一个名为 main.py 的文件中,然后使用以下命令启动 fastapi dev

$ <font color="#4E9A06">fastapi</font> dev <u style="text-decoration-style:solid">main.py</u>

  <span style="background-color:#009485"><font color="#D3D7CF"> FastAPI </font></span>  Starting development server 🚀

             Searching for package file structure from directories
             with <font color="#3465A4">__init__.py</font> files
             Importing from <font color="#75507B">/home/user/code/</font><font color="#AD7FA8">awesomeapp</font>

   <span style="background-color:#007166"><font color="#D3D7CF"> module </font></span>  🐍 main.py

     <span style="background-color:#007166"><font color="#D3D7CF"> code </font></span>  Importing the FastAPI app object from the module with
             the following code:

             <u style="text-decoration-style:solid">from </u><u style="text-decoration-style:solid"><b>main</b></u><u style="text-decoration-style:solid"> import </u><u style="text-decoration-style:solid"><b>app</b></u>

      <span style="background-color:#007166"><font color="#D3D7CF"> app </font></span>  Using import string: <font color="#3465A4">main:app</font>

   <span style="background-color:#007166"><font color="#D3D7CF"> server </font></span>  Server started at <font color="#729FCF"><u style="text-decoration-style:solid">http://127.0.0.1:8000</u></font>
   <span style="background-color:#007166"><font color="#D3D7CF"> server </font></span>  Documentation at <font color="#729FCF"><u style="text-decoration-style:solid">http://127.0.0.1:8000/docs</u></font>

      <span style="background-color:#007166"><font color="#D3D7CF"> tip </font></span>  Running in development mode, for production use:
             <b>fastapi run</b>

             Logs:

     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Will watch for changes in these directories:
             <b>[</b><font color="#4E9A06">&apos;/home/user/code/awesomeapp&apos;</font><b>]</b>
     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Uvicorn running on <font color="#729FCF"><u style="text-decoration-style:solid">http://127.0.0.1:8000</u></font> <b>(</b>Press CTRL+C
             to quit<b>)</b>
     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Started reloader process <b>[</b><font color="#34E2E2"><b>383138</b></font><b>]</b> using WatchFiles
     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Started server process <b>[</b><font color="#34E2E2"><b>383153</b></font><b>]</b>
     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Waiting for application startup.
     <span style="background-color:#007166"><font color="#D3D7CF"> INFO </font></span>  Application startup complete.

强烈建议您编写或复制代码,进行编辑并在本地运行。

在编辑器中使用它才能真正让您看到 FastAPI 的优势,了解您需要编写多少代码,所有类型检查、自动补全等。


安装 FastAPI

第一步是安装 FastAPI。

请确保创建一个 虚拟环境,激活它,然后 **安装 FastAPI**。

$ pip install "fastapi[standard]"

---> 100%

注意

当您使用 pip install "fastapi[standard]" 安装时,它会附带一些默认的可选标准依赖项,包括 fastapi-cloud-cli,它允许您部署到 FastAPI Cloud

如果您不想安装这些可选依赖项,可以改为安装 pip install fastapi

如果您想安装标准依赖项但不包含 fastapi-cloud-cli,则可以安装 pip install "fastapi[standard-no-fastapi-cloud-cli]"

高级用户指南

您还可以在阅读完本 **教程 - 用户指南** 后,阅读 **高级用户指南**。

高级用户指南 以本指南为基础,使用相同的概念,并教您一些额外的功能。

但您应该先阅读 **教程 - 用户指南**(也就是您现在正在阅读的内容)。

它被设计成您仅凭 **教程 - 用户指南** 就可以构建一个完整的应用程序,然后根据您的需求,使用 **高级用户指南** 中的一些额外想法来以不同的方式扩展它。