Приведи пример dependency в FastAPI

Python Middle Без компании
Приведи пример dependency в FastAPI
Ответы
В FastAPI зависимости (dependencies) используются для инъекции общих функциональностей в маршруты (routes). Они помогают избежать дублирования кода, например, для аутентификации, валидации или подключения к БД. Пример простой зависимости для проверки API-ключа: ``` from fastapi import FastAPI, Depends, HTTPException, Header app = FastAPI() def verify_api_key(api_key: str = Header(...)): if api_key != "secret-key": raise HTTPException(status_code=403, detail="Invalid API Key") return api_key @app.get("/protected/", dependencies=[Depends(verify_api_key)]) async def protected_route(): return {"message": "Access granted"} ``` Или через параметр маршрута: ``` @app.get("/items/") async def read_items(api_key: str = Depends(verify_api_key)): return {"items": ["item1", "item2"]} ``` Зависимости могут быть функциями, классами или даже другими зависимостями. Они выполняются перед обработкой запроса и могут возвращать значения, которые будут переданы в маршрут.