MIME-тип .json: application/json

Файлы с расширением .json (JSON) используют MIME-тип application/json.

Обновлено

application/json
MIME-тип для .json
Данные
Категория
Да
Сжатие через gzip/Brotli

Какой MIME-тип у файлов .json?

MIME-тип (media type) для файлов JSON с расширением .json — application/json. Также можно встретить text/json (obsolete). JSON всегда использует кодировку UTF-8 (RFC 8259), поэтому параметр charset не нужен. API должны отправлять этот тип, чтобы клиенты и браузеры разбирали тело ответа как JSON.

Заголовок Content-Type

Content-Type: application/json

Текстовые типы должны содержать charset, чтобы браузер правильно декодировал символы.

Настройка сервера

СерверКонфигурация
Nginx (mime.types или types {})application/json json;
Apache (.htaccess)AddType application/json .json
IIS (web.config)<mimeMap fileExtension=".json" mimeType="application/json" />
Node.js / Expressres.type('json') или res.setHeader('Content-Type', 'application/json')
Amazon S3Задайте Content-Type: application/json для объекта (метаданные) или передайте --content-type application/json в aws s3 cp

Нужно ли сжимать файлы .json?

Да. JSON — это текст, поэтому включение gzip или Brotli для application/json обычно уменьшает объём передачи на 50–80 %. Убедитесь, что список сжимаемых типов на вашем сервере включает этот тип — проверить это можно с помощью теста сжатия сайта.

Зачем нужен MIME-тип

Браузеры решают, что делать с ответом — отобразить, выполнить, воспроизвести или скачать — по заголовку Content-Type, а не по расширению файла. При X-Content-Type-Options: nosniff неверный тип приводит к тому, что таблицы стилей и скрипты полностью блокируются. Для загрузок никогда не доверяйте типу, отправленному клиентом; проверяйте содержимое файла (его магические байты) на сервере.

Часто задаваемые вопросы

Какой MIME-тип у .json?
application/json. Встречающиеся альтернативы: text/json (устаревший).
Как задать Content-Type для .json в Nginx?
Убедитесь, что application/json json; указан в блоке types (обычно в /etc/nginx/mime.types), и перезагрузите Nginx.
Нужно ли сжимать файлы .json через gzip?
Да — этот формат хорошо сжимается, поэтому добавьте тип в конфигурацию gzip/Brotli.