Ответ
HTTP-запрос состоит из следующих обязательных и опциональных частей:
-
Стартовая строка (Request Line):
- Метод (HTTP Verb):
GET,POST,PUT,DELETE,PATCHи др. - Путь к ресурсу (URL Path): Например,
/api/users. - Версия протокола:
HTTP/1.1илиHTTP/2.
- Метод (HTTP Verb):
-
Заголовки (Headers): Метаданные запроса.
Host: example.com(обязательный в HTTP/1.1)Content-Type: application/jsonAuthorization: Bearer <token>User-Agent,Acceptи др.
-
Тело запроса (Body): Опционально. Содержит данные, например, для методов
POSTилиPUT. Часто в формате JSON, XML или form-data.
Пример GET-запроса:
GET /api/users?role=admin HTTP/1.1
Host: api.example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
Accept: application/json
Пример POST-запроса с телом:
POST /api/users HTTP/1.1
Host: api.example.com
Content-Type: application/json
Content-Length: 56
{
"name": "Alice",
"email": "alice@example.com"
}
Почему это важно: Понимание структуры необходимо для отладки, написания API-тестов, работы с инструментами (Charles, Postman) и анализа сетевого трафика.