Как работает Middleware

Python Middle Без компании
Как работает Middleware
Ответы
Middleware в Python (например, в Django или FastAPI) — это прослойка между запросом и обработчиком, которая может модифицировать запрос/ответ или выполнять дополнительные действия. **Как работает:** - Приходит запрос - Middleware обрабатывает его **до** view (например, аутентификация) - Вызывается view - Middleware обрабатывает ответ **после** view (например, добавляет заголовки) **Пример в FastAPI:** ``` from fastapi import FastAPI, Request app = FastAPI() @app.middleware("http") async def add_process_time_header(request: Request, call_next): # До обработки запроса print("Before request") response = await call_next(request) # Вызов view # После обработки response.headers["X-Custom-Header"] = "Example" return response ``` **Ключевые особенности:** - Выполняются в порядке регистрации - Могут прервать запрос (например, если нет доступа) - Работают как для входящих запросов, так и для исходящих ответов