Перейти до змісту

Статичні файли

Ви можете автоматично надавати статичні файли з каталогу, використовуючи StaticFiles.

Використання StaticFiles

  • Імпортуйте StaticFiles.
  • «Під'єднати» екземпляр StaticFiles() з вказанням необхідного шляху.
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles

app = FastAPI()

app.mount("/static", StaticFiles(directory="static"), name="static")

Технічні деталі

Ви також можете використовувати from starlette.staticfiles import StaticFiles.

FastAPI надає той самий starlette.staticfiles, що й fastapi.staticfiles для зручності розробників. Але фактично він безпосередньо походить із Starlette.

Що таке «Під'єднання»

«Під'єднання» означає додавання повноцінного «незалежного» застосунку за певним шляхом, який потім обробляє всі під шляхи.

Це відрізняється від використання APIRouter, оскільки під'єднаний застосунок є повністю незалежним. OpenAPI та документація вашого основного застосунку не будуть знати нічого про ваш під'єднаний застосунок тощо.

Ви можете дізнатися більше про це в Посібнику для просунутих користувачів.

Деталі

Перше "/static" вказує на під шлях, за яким буде «під'єднано» цей новий «підзастосунок». Тому будь-який шлях, який починається з "/static", буде оброблятися ним.

directory="static" визначає назву каталогу, що містить ваші статичні файли.

name="static" це ім'я, яке можна використовувати всередині FastAPI.

Усі ці параметри можуть бути іншими за "static", налаштуйте їх відповідно до потреб і особливостей вашого застосунку.

Додаткова інформація

Детальніше про налаштування та можливості можна дізнатися в документації Starlette про статичні файли.