По порядку Middle net/http и middleware обновлено

Путь запроса через net/http

Вопрос

Расставьте этапы обработки входящего запроса в net/http по порядку.

Попробуйте сами

Расставьте шаги по порядку стрелками.

  1. 1
    Сервер запускает горутину для соединения
  2. 2
    Читаются и разбираются заголовки запроса
  3. 3
    Запрос проходит цепочку middleware
  4. 4
    ServeMux выбирает обработчик по методу и пути
  5. 5
    Обработчик пишет заголовки, статус и тело ответа
  6. 6
    Listener принимает TCP-соединение
Показать ответ и разбор

Коротко

Соединение принимается в цикле Serve, получает свою горутину, затем разбирается запрос (здесь работает ReadHeaderTimeout). Корневой Handler сервера это обычно цепочка middleware, внутри которой роутер находит конечный обработчик.

Правильный порядок

  1. 1
    Listener принимает TCP-соединение
  2. 2
    Сервер запускает горутину для соединения
  3. 3
    Читаются и разбираются заголовки запроса
  4. 4
    Запрос проходит цепочку middleware
  5. 5
    ServeMux выбирает обработчик по методу и пути
  6. 6
    Обработчик пишет заголовки, статус и тело ответа

Разбор

Соединение принимается в цикле Serve, получает свою горутину, затем разбирается запрос (здесь работает ReadHeaderTimeout). Корневой Handler сервера это обычно цепочка middleware, внутри которой роутер находит конечный обработчик.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме