Статичні файли¶
Ви можете автоматично надавати статичні файли з каталогу, використовуючи 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.
Усі ці параметри можуть бути змінені відповідно до потреб і особливостей вашого застосунку.
Додаткова інформація¶
Детальніше про налаштування та можливості можна дізнатися в документації Starlette про статичні файли.