Что такое Depends в FastAPI

Python Middle Без компании
Что такое Depends в FastAPI
Ответы
`Depends` в FastAPI — это механизм внедрения зависимостей (Dependency Injection). Он позволяет декларативно указывать зависимости для маршрутов (endpoints), таких как проверка авторизации, подключение к БД или другие сервисы. **Пример:** ``` from fastapi import Depends, FastAPI app = FastAPI() def common_parameters(q: str = None, skip: int = 0, limit: int = 10): return {"q": q, "skip": skip, "limit": limit} @app.get("/items/") async def read_items(commons: dict = Depends(common_parameters)): return commons ``` **Особенности:** - `Depends` может принимать функцию или класс (вызываемый объект). - Зависимости могут быть вложенными. - Автоматически обрабатывается FastAPI (вызов, кеширование и т.д.). - Часто используется для `JWT-аутентификации`, `сессий БД` и валидации. **Совет:** Для сложных сценариев используйте `Depends` с `typing.Annotated` (Python 3.9+).