Вернуться в видеотеку

Техническое собеседование по Node.js: ревью HTTP-прокси после курса (часть 1)

Запись технического собеседования после курса по Node.js: участник показывает несколько реализаций HTTP-прокси — обработку обычных запросов, CONNECT-туннель, вариант на net, прокси-аутентификацию и TLS. Ведущий задаёт уточняющие вопросы и проводит ревью кода: обсуждаются сокеты и двунаправленные streams, разбор HTTP-сообщений и заголовков, CRLF, значения портов и обработка некорректных данных.

Источник: Timur Shemsedinov

Открыть на YouTube

Коротко о видео

Запись представляет собой разбор примеров Node.js HTTP Proxy, подготовленных участником после курса. Автор последовательно показывает варианты реализации, начиная с простого HTTP-запроса и переходя к низкоуровневому соединению через модуль net. Ведущий уточняет, как передаются порт, host и заголовки, почему для прокси важна двунаправленность потока и где проходит граница между сокетом и обработчиком. При чтении кода участники обсуждают имена функций, разделение парсинга пакета и заголовка, повторное использование логики и обработку некорректных параметров. Разбор также затрагивает Parser, Transform stream и варианты небольших абстракций для подсчета размера. Это практическая проверка инженерного мышления на конкретном коде.

Затронутые темы

Что взять на заметку

  • HTTP-прокси нужно объяснять через соединение с целевым сервером, заголовки и двунаправленную передачу данных.
  • Парсинг полного пакета и парсинг его заголовка лучше разделять на отдельные функции.
  • Названия функций должны отражать точный объем выполняемого парсинга.
  • Низкоуровневый net подходит для контроля соединения, но требует аккуратной обработки данных.
  • Даже небольшие примеры полезно проверить на пустые и некорректные параметры.

Рекомендуем посмотреть