Ir para o conteúdo

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.