Назад к вопросам
СБЕР
Middle
2
Что такое Middleware в FastAPI и зачем оно нужно?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Middleware в FastAPI — это компонент, который перехватывает HTTP-запросы и ответы на уровне приложения, позволяя выполнять дополнительную обработку до и после вызова конечных точек (эндпоинтов).
Зачем нужно Middleware:
- Логирование запросов и ответов
- Обработка ошибок и исключений
- Управление CORS
- Аутентификация и авторизация
- Изменение или добавление заголовков
Пример простого middleware, который выводит время обработки запроса:
from fastapi import FastAPI, Request
import time
app = FastAPI()
@app.middleware("http")
async def add_process_time_header(request: Request, call_next):
start_time = time.time()
response = await call_next(request)
process_time = time.time() - start_time
response.headers["X-Process-Time"] = str(process_time)
return response