Necesito servir un directorio que contenga datos, como Apache sirve un índice, y me gustaría servirlo a través de mi aplicación FastAPI.
¿Es eso posible con FastAPI o Starlette?
De lo contrario, las alternativas de Simplehttpsserver sugieren Twistd como un paquete de python. ¿Es posible que FastAPI redirija a un servidor twistd en el montaje del directorio?
Está buscando la utilidad StaticFiles :
from fastapi import FastAPI from fastapi.staticfiles import StaticFiles app = FastAPI() app.mount("/", StaticFiles(directory="static"), name="static")El uso de argumentos está documentado en la documentación de FastAPI :
El primer "/" se refiere a la ruta en la que se "montará" esta "subaplicación". En este caso, todas las rutas serán manejadas por él.
El directory="static" se refiere al nombre del directorio que contiene sus archivos estáticos en su sistema de archivos local.
El name="static" le da un nombre que FastAPI puede usar internamente.
Todos estos parámetros pueden ser diferentes a "estáticos", ajústelos con las necesidades y detalles específicos de su propia aplicación.
Nota: deberá instalar aiofiles :
pip install aiofiles