Что знаешь про декоратор Middleware?
Этот вопрос проверяет понимание концепции Middleware и её использования в обработке запросов и ответов в веб-приложениях.
Короткий ответ
Middleware — это компонент, который выполняется между запросом клиента и ответом сервера. В Python-декораторах Middleware часто используется для изменения запросов, ответов или их обработки, добавляя функциональность, например, авторизацию, логирование или кэширование.
Длинный ответ
Middleware — это "прослойка", выполняющаяся между клиентским запросом и серверным ответом. Она используется для выполнения повторяющихся задач, таких как:
- Аутентификация и авторизация.
- Логирование запросов.
- Обработка исключений.
- Кэширование данных.
В Python-декораторах Middleware часто применяется для обёртывания функций или методов.
Пример Middleware в Flask:
from flask import Flask, request
app = Flask(__name__)
@app.before_request
def before_request_middleware():
print(f"Request method: {request.method}")
@app.after_request
def after_request_middleware(response):
print(f"Response status: {response.status}")
return response
@app.route('/')
def home():
return "Hello, World!"
app.run()
Здесь before_request и after_request — это Middleware, обрабатывающие запросы и ответы.