Тип носителя (ранее MIME-тип) указывает формат данных: application/json, text/csv, image/png, multipart/form-data. Content-Type указывает тип носителя фактически отправляемого тела; Accept указывает, какие типы носителей отправитель готов принимать. Параметры уточняют его, например, text/csv; charset=utf-8.
Серверы используют Content-Type запроса для выбора парсера и отвечают ошибкой 415 Unsupported Media Type, если подходящего типа данных нет. Клиенты используют Content-Type ответа для определения способа чтения тела запроса. Структурированные суффиксы, такие как application/problem+json "this is JSON with a known structure" .
Тело запроса говорит само за себя. JSON-ответ, отправленный в формате text/plain — распространенный вариант по умолчанию в некоторых HTTP-клиентах — будет отклонен или неправильно прочитан строгим сервером, а JSON-ответ с меткой text/html может быть интерпретирован браузером как веб-страница, что является проблемой безопасности, а также ошибкой.
При загрузке постеров к фильмам возникает ошибка 415, поскольку тип данных не принимается, а запрос GET /protocol/v1/export/documents возвращает JSON, CSV или XML в зависимости от параметра Accept, а в остальных случаях — ошибку 406.
Все термины · Приёмы тестирования · Все 39 mock REST API
Последнее обновление