FastAPI - 安装烧瓶应用程序


用 Flask 或 Django 框架编写的 WSGI 应用程序可以包装在WSGIMiddleware中,并将其安装在 FastAPI 应用程序上,以使其符合 ASGI 要求。

首先在当前FastAPI环境中安装Flask包。

pip3 install flask

以下代码是一个最小的 Flask 应用程序 -

from flask import Flask
flask_app = Flask(__name__)
@flask_app.route("/")
def index_flask():
   return "Hello World from Flask!"

然后将app声明为FastAPI应用程序对象,并定义一个用于渲染Hello World消息的操作函数。

from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def index():
   return {"message": "Hello World from FastAPI!"}

接下来,使用 mount() 方法将 Flask 应用程序安装为 FastAPI 主应用程序的子应用程序。

from fastapi.middleware.wsgi import WSGIMiddleware
app.mount("/flask", WSGIMiddleware(flask_app))

运行 Uvicorn 开发服务器。

uvicorn flaskapp:app –reload

主要的 FastAPI 应用程序可在 URL http://localhost:8000/ 路径上找到。

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

Flask 子应用程序安装在 URL http://localhost:8000/flask 处。

Hello World from Flask!