Ответ
Формат данных в HTTP-запросе определяется заголовком Content-Type. Основные форматы:
| Формат | MIME-тип | Использование | Пример тела запроса |
|---|---|---|---|
| JSON | application/json |
REST API, обмен структурированными данными. | {"user": {"name": "Alice", "id": 123}} |
| Form Data (URL-encoded) | application/x-www-form-urlencoded |
Отправка простых пар «ключ-значение» из HTML-форм. | username=alice&password=secret |
| Multipart Form Data | multipart/form-data |
Отправка файлов вместе с текстовыми полями. | (Содержит границы для разделения частей) |
| XML | application/xml, text/xml |
SOAP-сервисы, legacy системы. | <request><user>Alice</user></request> |
| Plain Text | text/plain |
Передача простого текста. | Hello, server! |
| Binary Data | application/octet-stream, image/png, etc. |
Загрузка файлов (изображений, PDF). | (Байтовый поток) |
Пример отправки JSON через curl:
curl -X POST https://api.example.com/users
-H "Content-Type: application/json"
-d '{"name": "Alice", "role": "developer"}'
Почему важен Content-Type: Сервер использует этот заголовок, чтобы правильно распарсить (parse) тело запроса. Неверный тип может привести к ошибке 415 Unsupported Media Type.