Flet为FastAPI提供支持
我们刚发布了带有FastAPI支持的Flet 0.10.0!
将FastAPI与Uvicorn、Hypercorn、Gunicorn或其他Web服务器结合使用,可以取代内置的Flet Web服务器(Fletd),并可可靠地运行生产用途的Flet工作负载。
另一方面,有经验的FastAPI开发人员可以使用Flet轻松将交互式实时仪表板和管理UI添加到现有或新的FastAPI服务中。
一个最小的应用程序示例
import flet as ft
import flet_fastapi
async def main(page: ft.Page):
await page.add_async(
ft.Text("Hello, Flet!")
)
app = flet_fastapi.app(main)
这是一个简单的应用程序,只在网页上输出“Hello, Flet!”。
要运行该应用程序,首先安装Flet for FastAPI和Uvicorn:
pip install flet-fastapi
pip install uvicorn
将上面的代码保存到hello.py
,然后使用以下命令启动Uvicorn:
uvicorn hello:app
打开浏览器,导航到 http://127.0.0.1:8000 ,以查看运行的应用程序。
为了使用FastAPI WebSocket处理程序与Flet应用程序配合工作,Flet应用程序必须是异步的。
特性和优势
- 在单个域上运行多个Flet应用程序 - 映射到根目录和/或子路径。
- 简单的一行映射 或者个别端点配置。
- 轻量级的异步包装器,用于更大的并发性的FastAPI WebSocket连接。
- 提供Flet静态文件,包括用户资产和应用程序元信息的自定义。
- 用于
FilePicker
控件的上传处理程序。 - 用于身份验证流的OAuth回调处理程序。
请参阅指南 ,以获得关于Flet和FastAPI完整的信息。