我需要提供一个包含数据的目录,例如Apache如何提供索引,我想通过我的FastAPI应用程序来提供它。
使用FastAPI或Starlette可以吗?
如果没有,Simplehttpserver alternatives建议将Twisted作为python软件包。可以将FastAPI重定向到目录装入时的扭曲服务器吗?
答案 0 :(得分:1)
您正在寻找 StaticFiles
实用程序:
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
app = FastAPI()
app.mount("/", StaticFiles(directory="static"), name="static")
参数用法记录在 FastAPI documentation 上:
第一个 "/"
指的是这个“子应用程序”将被“安装”到的路径。在这种情况下,所有路径都会由它处理。
directory="static"
是指包含本地文件系统上静态文件的目录的名称。
name="static"
为其提供了一个可供 FastAPI 内部使用的名称。
所有这些参数都可以与“静态”不同,请根据您自己的应用程序的需要和具体细节进行调整。
<块引用>注意:您需要安装 aiofiles:pip install aiofiles