Arquivos Estáticos¶
Você pode servir arquivos estáticos automaticamente de um diretório usando StaticFiles
.
Use StaticFiles
¶
- Importe
StaticFiles
. - "Monte" uma instância de
StaticFiles()
em um caminho específico.
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
app = FastAPI()
app.mount("/static", StaticFiles(directory="static"), name="static")
Detalhes técnicos
Você também pode usar from starlette.staticfiles import StaticFiles
.
O FastAPI fornece o mesmo que starlette.staticfiles
como fastapi.staticfiles
apenas como uma conveniência para você, o desenvolvedor. Mas na verdade vem diretamente da Starlette.
O que é "Montagem"¶
"Montagem" significa adicionar um aplicativo completamente "independente" em uma rota específica, que então cuida de todas as subrotas.
Isso é diferente de usar um APIRouter
, pois um aplicativo montado é completamente independente. A OpenAPI e a documentação do seu aplicativo principal não incluirão nada do aplicativo montado, etc.
Você pode ler mais sobre isso no Guia Avançado do Usuário.
Detalhes¶
O primeiro "/static"
refere-se à subrota em que este "subaplicativo" será "montado". Portanto, qualquer caminho que comece com "/static"
será tratado por ele.
O directory="static"
refere-se ao nome do diretório que contém seus arquivos estáticos.
O name="static"
dá a ela um nome que pode ser usado internamente pelo FastAPI.
Todos esses parâmetros podem ser diferentes de "static
", ajuste-os de acordo com as necessidades e detalhes específicos de sua própria aplicação.
Mais informações¶
Para mais detalhes e opções, verifique Starlette's docs about Static Files.