HTTP запрос – это HTTP сообщение, которое клиент посылает HTTP серверу. Обычно HTTP запрос содержит:
- строку запроса, в которой указывается версия HTTP протокола и HTTP метод запроса;
- ноль или несколько заголовков, разделенных между собой символом конца строки, в которых передаются другие HTTP праметры для успешного HTTP соединения;
- пустую строку, чтобы отделить служебную информацию от тела сообщения;
- необязательное тело сообщения.
Вот так выглядит общий синтаксис (общая структура HTTP запроса):
1234567891011 | Request = Request-Line ; *( general-header ; | request-header ; | entity-header ) ; CRLF [ message-body ] ; |
В первой строке HTTP сообщения обычно содержится HTTP метод, который нужно применить к ресурсу, который запрашивает клиент, идентификатор ресурса (читай URI в HTTP Словаре) и версию HTTP протокола.