HTTP/1.1 передаёт строку запроса, заголовки и необязательное тело. HTTP/2 сохраняет HTTP-семантику, но кодирует обмен бинарными фреймами и мультиплексирует потоки соединения.
Опишите структуру HTTP-запроса и отличия HTTP/1.1 от HTTP/2.
HTTP/1.1 передаёт строку запроса, заголовки и необязательное тело. HTTP/2 сохраняет HTTP-семантику, но кодирует обмен бинарными фреймами и мультиплексирует потоки соединения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
HTTP/1.1 передаёт строку запроса, заголовки и необязательное тело. HTTP/2 сохраняет HTTP-семантику, но кодирует обмен бинарными фреймами и мультиплексирует потоки соединения.
В HTTP/1.1 стартовая строка включает метод, request target и версию, затем идут заголовки, пустая строка и тело по правилам framing. В HTTP/2 вместо текстовой стартовой строки используются псевдозаголовки, а заголовки сжимаются HPACK.
Несколько потоков HTTP/2 могут передаваться параллельно в одном соединении, но потеря TCP-пакета всё ещё влияет на него целиком. Это не то же самое, что независимые потоки QUIC в HTTP/3. Метод и код ответа сохраняют смысл независимо от версии транспорта.