Skip to content

36 Протокол HTTP

36 Протокол HTTP/1.1 (опционально HTTP/2.0, HTTP/3.0) Взаимодействие с web-серверами

https://habr.com/ru/companies/avito/articles/710678/

43. Протокол HTTP/1.1 (опционально HTTP/2.0, HTTP/3.0). Модель OSI/ISO

HTTP (Hypertext Transfer Protocol) — это протокол передачи гипертекста, используемый для обмена информацией между клиентом и сервером в сети интернет.

HTTP/1.1 стал стандартом в 1997 году и внёс несколько значительных улучшений в сравнении с HTTP/1.0, таких как поддержка постоянных соединений (persistent connections), что позволило снизить нагрузку на сеть.

В версии 1.1 появились следующие методы.

  • GET-запрос — это запрос серверу с просьбой отправки какой-то информации.
  • POST-запрос используется, когда клиент отправляет информацию на сервер.
  • PUT заменяет данные на сервере
  • DELETE удаляет данные с сервера
  • PATCH частично обновляет данные на сервере
  • HEAD — это то же самое, что и GET, но без тела
  • TUNNEL — туннель к веб ресурсу

HTTP/2.0 был опубликован в 2015 году. Некоторые из его ключевых улучшений включают мультиплексирование (когда несколько запросов могут быть отправлены через одно соединение без ожидания ответа), поддержку приоритетов и зависимостей между запросами, и начальное сжатие заголовков.

HTTP/3.0, также известный как HTTP-over-QUIC, находится на этапе разработки. Он предлагает передачу данных через протокол QUIC вместо TCP. QUIC позволяет устанавливать соединение с минимальной задержкой и лучше справляется с потерей пакетов данных.

Помимо методов для взаимедействия с веб приложением существуют:

  • RESTful API: Популярный архитектурный стиль для создания веб-сервисов. Использует HTTP-запросы для выполнения операций с ресурсами.
  • SOAP: Протокол обмена сообщениями, который использует XML для передачи данных между клиентом и сервером.
  • WebSockets: Технология для двусторонней связи между клиентом и сервером в реальном времени.
  • Cookies и Сессии: Механизмы для сохранения состояния между запросами клиента.