TGViewer
Тестирование | TestGrow Тестирование | TestGrow @qatestgrow · 5.26K subscribers
Post #89 783
#Полезнаяинформация

Структура HTTP протокола.

Каждое HTTP-сообщение состоит из трёх частей, которые передаются в указанном порядке:
Стартовая строка (англ. Starting line) - определяет тип сообщения, различается для запроса и ответа;
Заголовки (англ. Headers) - характеризуют тело сообщения, параметры передачи и прочие сведения;
Тело сообщения (англ. Message Body) - непосредственно данные сообщения.
Обязательно должно отделяться от заголовков пустой строкой.
Для версии протокола 1.1 сообщение запроса обязательно должно содержать заголовок Host.

1. Стартовая строка.
Стартовая строка запроса выглядит так: Метод URI HTTP/Версия, где:
Метод (англ. Method) - тип запроса, одно слово заглавными буквами;
URI (не путать с URL) определяет путь к запрашиваемому документу;
Версия (англ. Version) - пара разделенных точкой цифр. Например: 1.1.
Чтобы запросить страницу данной статьи, клиент должен передать строку (задан всего один заголовок):
GET /wiki/HTTP HTTP/1.1
Host:
ru.wikipedia.org
Стартовая строка ответа сервера имеет следующий формат: HTTP/Версия КодСостояния Пояснение, где:
Версия - пара разделенных точкой цифр, как в запросе;
Код состояния (англ. Status Code) - три цифры. По коду состояния определяется дальнейшее содержимое сообщения и поведение клиента;
Пояснение (англ. Reason Phrase) - текстовое короткое пояснение к коду ответа для пользователя. Никак не влияет на сообщение и является необязательным.
Например, стартовая строка ответа сервера на предыдущий запрос может выглядеть так:
HTTP/1.0 200 OK

2. Заголовки.
Заголовки HTTP (англ. HTTP Headers) - это строки в HTTP-сообщении, содержащие разделённую двоеточием пару параметр-значение. Формат заголовков соответствует общему формату заголовков текстовых сетевых сообщений ARPA (см. RFC 822). Заголовки должны отделяться от тела сообщения хотя бы одной пустой строкой. Примеры заголовков:
Server: Apache/2.2.11 (Win32) PHP/5.3.0
Last-Modified: Sat, 16 Jan 2010 21:16:42 GMT
Content-Type: text/plain; charset=windows-1251
Content-Language: ru

основных группы:
General Headers («Основные заголовки») - могут включаться в любое сообщение клиента и сервера;
Request Headers («Заголовки запроса») - используются только в запросах клиента;
Response Headers («Заголовки ответа») - только для ответов от сервера;
Entity Headers («Заголовки сущности») - сопровождают каждую сущность сообщения.

3. Тело сообщения.
Тело HTTP-сообщения (message-body), если оно присутствует, используется для передачи тела объекта, связанного с запросом или ответом. Тело сообщения отличается от тела объекта (entity-body) только в том случае, когда применяется кодирование передачи, что указывается полем заголовка Transfer-Encoding.
Поле Transfer-Encoding должно использоваться для указания любого кодирования передачи, примененного приложением в целях гарантирования безопасной и правильной передачи сообщения. Поле Transfer-Encoding - это свойство сообщения, а не объекта, и, таким образом, может быть добавлено или удалено любым приложением в цепочке запросов/ответов.
  • 🔥 7
  • ❤ 2
More from @qatestgrow
  1. Oct 14, 2026Тестирование | TestGrow pinned a video
  2. Oct 14, 2026Всем привет! Рад сообщить, что 17 ноября я принял решение запустить новый и единственный п…
  3. Sep 25, 2026🚀 Открытый бесплатный курс для тестировщиков «Что под капотом у ИИ» 29 сентября в 21:00 м…
  4. Aug 24, 2026Всем привет! Важная информация, платформа testgrow переехала на новый домен testgrow.io
  5. Jul 23, 2026Всем привет! У меня отличные новости, я определился с датой старта 4-го потока на курсе по…
  6. Jul 2, 2026🔥 Как тестировать задачи быстрее, не теряя в качестве Если ты всё ещё: - пишешь чек-листы…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →