Qual é o tipo MIME dos arquivos .json?
O tipo MIME (media type) dos arquivos JSON com a extensão .json é application/json. Você também pode encontrar text/json (obsolete). JSON é sempre UTF-8 (RFC 8259), então um parâmetro charset é desnecessário. APIs devem enviar esse tipo para que clientes e navegadores interpretem o corpo como JSON.
Header Content-Type
Content-Type: application/json
Tipos baseados em texto devem incluir um charset para que o navegador decodifique os caracteres corretamente.
Configuração do servidor
| Servidor | Configuração |
|---|---|
Nginx (mime.types ou types {}) | application/json json; |
Apache (.htaccess) | AddType application/json .json |
IIS (web.config) | <mimeMap fileExtension=".json" mimeType="application/json" /> |
| Node.js / Express | res.type('json') ou res.setHeader('Content-Type', 'application/json') |
| Amazon S3 | Defina Content-Type: application/json no objeto (metadados) ou passe --content-type application/json para aws s3 cp |
Os arquivos .json devem ser compactados?
Sim. JSON é texto, então ativar gzip ou Brotli para application/json normalmente reduz o tamanho da transferência em 50–80%. Confira se a lista de compactação do seu servidor inclui esse tipo — verifique com o teste de compactação de site.
Por que o tipo MIME importa
Os navegadores decidem o que fazer com uma resposta — renderizar, executar, reproduzir ou baixar — pelo header Content-Type, e não pela extensão do arquivo. Com X-Content-Type-Options: nosniff, um tipo errado faz com que folhas de estilo e scripts sejam bloqueados. Em uploads, nunca confie no tipo enviado pelo cliente; verifique o conteúdo do arquivo (seus magic bytes) no servidor.
Consulta de tipos MIME
Pesquise todas as extensões de arquivo e tipos MIME comuns, com headers Content-Type prontos para copiar.
Perguntas frequentes
Qual é o tipo MIME de .json?
application/json. Outras alternativas encontradas na prática: text/json (obsoleto).Como definir o Content-Type de .json no Nginx?
application/json json; esteja listado no bloco types (geralmente em /etc/nginx/mime.types) e recarregue o Nginx.