HTTP-запрос состоит из трех основных частей: строки запроса (request line), заголовков запроса (request headers) и тела запроса (request body), который может отсутствовать в некоторых типах запросов.

  1. Строка запроса (request line) - это первая строка в HTTP-запросе, которая содержит три элемента: метод запроса (HTTP-метод), URI (Uniform Resource Identifier) и версию протокола HTTP. Например:
    GET /index.html HTTP/1.1
  1. Заголовки запроса (request headers) - это набор строк, которые передаются после строки запроса и содержат метаданные о запросе, такие как тип и длина содержимого, тип и версия браузера, язык пользователя и т.д. Заголовки разделяются символом перевода строки (CRLF). Например:
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
  1. Тело запроса (request body) - это необязательная часть запроса, которая содержит данные, передаваемые на сервер. Тело запроса может использоваться в запросах типа POST, PUT, DELETE и т.д. Например:
    POST /form.php HTTP/1.1
    Host: example.com
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 25
 
    name=John&age=30&email=test@example.com

Запрос может содержать как только строку запроса и заголовки, так и все три части вместе.


Назад