Встречается на собеседованиях • сегодня

Как используется middleware в Django

Middleware в Django — это слой обработки запросов и ответов между сервером и view. Это набор функций/классов, которые выполняются последовательно для каждого запроса до view и после.

Пример middleware:

python
class SimpleMiddleware:
    def __init__(self, get_response):
        self.get_response = get_response
text
def __call__(self, request):
    # Код до view (например, логирование)
    print("До view:", request.path)
    
    response = self.get_response(request)  # Вызов view
    
    # Код после view (например, добавление заголовка)
    response['X-My-Header'] = 'Hello'
    return response
text

**Типичные use-cases:**  
- Аутентификация (`AuthenticationMiddleware`)  
- CSRF-защита (`CsrfViewMiddleware`)  
- Сессии (`SessionMiddleware`)  
- Логирование, обработка ошибок, CORS  

**Регистрация в `settings.py`:**  
```python
MIDDLEWARE = [
    'myapp.middleware.SimpleMiddleware',
    ...
]

Порядок middleware важен: первый обрабатывает запрос первым, но ответ — последним.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы