构建FastApi应用程序并与Vercel部署
#python #api #fastapi #vercel

您是否希望使用FastAPI构建功能强大的API并快速部署?别再看!在本教程中,我们将浏览创建FastAPI应用程序的步骤,并使用Vercel进行部署。

设置环境

要开始,请确保您在计算机上安装了Python。我们将使用虚拟环境来保持我们的项目依赖关系隔离。打开您的终端并运行以下命令,以创建名为env的虚拟环境:

python -m venv env

接下来,通过运行以下命令来激活虚拟环境:

source env/bin/activate

安装fastapi和uvicorn

现在我们的虚拟环境已经激活,让我们安装必要的依赖项。运行以下命令以安装fastapi和uvicorn:

pip install fastapi uvicorn

FastApi是我们将使用的网络框架来构建我们的API,而Uvicorn是一个将为我们的FastAPI应用程序服务的ASGI服务器。

创建FastAPI应用程序

在您的项目目录中,创建一个名为main.py的文件,并添加以下代码:

import uvicorn
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
    return {"message": "Hello from FastAPI!"}

if __name__ == "__main__":
    uvicorn.run("main:app", host="0.0.0.0", port=8000, reload=True)

此代码在root URL(“/”)上设置了一个基本的FastApi应用程序,该应用程序返回带有“消息”键的JSON响应。

本地运行FastAPI应用程序

要在本地运行FastAPI应用程序,请打开终端并导航到项目目录。运行以下命令:

python main.py

这将启动Uvicorn服务器,您应该看到指示服务器正在运行的输出。

现在,打开您的网络浏览器并访问http://localhost:8000/。您应该看到以下JSON回复:

{
    "message": "Hello from FastAPI!"
}

恭喜!您已经成功构建并在本地运行了FastAPI应用程序。

用Vercel部署FastAPI应用程序

要使用Vercel部署我们的FastAPI应用程序,我们需要创建一个vercel.json配置文件。在您的项目目录中创建一个名为vercel.json的新文件,并添加以下内容:

{
  "version": 2,
  "builds": [
    { "src": "main.py", "use": "@vercel/python" }
  ],
  "routes": [
    { "src": "/(.*)", "dest": "/main.py" }
  ],
  "env": {
    "APP_MODULE": "main:app"
  }
}

在此配置文件中,我们指定部署的源文件是main.py,并且使用@vercel/python构建器。我们还定义了将所有请求重定向到main.py的路由,然后将APP_MODULE环境变量设置为main:app,该变量告诉Vercel在哪里可以找到FastAPI应用程序实例。

接下来,我们需要创建一个列出项目依赖项的requirements.txt文件。在您的终端中运行以下命令以生成requirements.txt文件:

pip freeze > requirements.txt

此命令将在requirements.txt文件中捕获所有已安装的依赖项及其版本。

设置git并推动代码

在部署到Vercel之前,让我们设置一个git存储库,然后将代码推向它。首先,在GitHub或任何其他GIT托管平台上创建一个存储库。创建存储库后,在终端中导航到您的项目目录并运行以下命令:

git init
git add .
git commit -m "Deploy FastAPI to Vercel"
git branch -M main
git remote add origin https://github.com/your-username/your-repo.git
git push -u origin main

确保用实际的github用户名和存储库名称替换your-usernameyour-repo

使用Vercel部署

现在是时候使用Vercel部署我们的FastAPI应用程序了。打开Vercel网站(https://vercel.com)并创建一个新项目。选择您的git存储库并配置图像中所示的项目设置。

Vercel New Project

Vercel Project Settings

配置项目后,Vercel将自动构建和部署您的FastAPI应用程序。部署完成后,您将收到API Live的URL!

恭喜!您已经使用Vercel成功地部署了FastAPI应用程序。您可以在GitHub上找到已部署的代码,并访问Live API here

我希望本教程有助于指导您构建FastApi应用程序并使用Vercel部署它的过程。现在,您可以利用FastApi的功率和速度,再加上Vercel提供的易于部署,以立即创建和部署强大的API。愉快的编码!