Встречается на собеседованиях • сегодня
Был ли опыт работы с зависимостью Depends и механизм dependency injection в FastAPI
FastAPI использует механизм dependency injection через Depends для внедрения зависимостей в маршруты. Это мощный инструмент для повторного использования кода, управления состоянием и тестирования.
Пример:
python
from fastapi import FastAPI, Depends
app = FastAPI()
def get_db():
db = "database_connection"
try:
yield db
finally:
print("Close connection")
@app.get("/items/")
async def read_items(db: str = Depends(get_db)):
return {"db": db}
text
**Ключевые моменты:**
- `Depends` автоматически вызывает функцию/зависимость и передает результат в маршрут.
- Поддерживает генераторы (`yield`) для управления ресурсами (например, сессии БД).
- Можно вкладывать зависимости друг в друга.
- Интегрируется с `FastAPI` для валидации, безопасности (OAuth2) и других сценариев.
Использовал для аутентификации, доступа к БД и кастомных проверок.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы