Tipo MIME .mjs: text/javascript

Arquivos com extensão .mjs (módulo JavaScript) usam o tipo MIME text/javascript.

Atualizado em

text/javascript
Tipo MIME para .mjs
Web
Categoria
Sim
Comprimir com gzip/Brotli

Qual é o tipo MIME dos arquivos .mjs?

O tipo MIME (tipo de mídia) para arquivos de módulo JavaScript com a extensão .mjs é text/javascript. Você também pode ver application/javascript. O mesmo tipo é usado para .js. A extensão .mjs marca módulos ES no Node.js. Alguns servidores mais antigos não a reconhecem e enviam application/octet-stream, que os navegadores rejeitam em scripts de módulo — adicione o tipo explicitamente.

Header Content-Type

Content-Type: text/javascript; charset=utf-8

Tipos baseados em texto devem incluir um charset para que o navegador decodifique os caracteres corretamente.

Configuração do servidor

ServidorConfiguração
Nginx (mime.types ou types {})text/javascript mjs;
Apache (.htaccess)AddType text/javascript .mjs
IIS (web.config)<mimeMap fileExtension=".mjs" mimeType="text/javascript" />
Node.js / Expressres.type('mjs') ou res.setHeader('Content-Type', 'text/javascript; charset=utf-8')
Amazon S3Defina Content-Type: text/javascript no objeto (metadados) ou passe --content-type text/javascript para aws s3 cp

Os arquivos .mjs devem ser comprimidos?

Sim. Módulo JavaScript é texto, então ativar gzip ou Brotli para text/javascript normalmente reduz o tamanho da transferência em 50–80 %. Garanta que a lista de compressão do seu servidor inclua esse tipo — verifique com o teste de compressã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, 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.

Perguntas frequentes

Qual é o tipo MIME de .mjs?
text/javascript. Alternativa encontrada na prática: application/javascript.
Como definir o Content-Type de .mjs no Nginx?
Garanta que text/javascript mjs; esteja listado no bloco types (geralmente em /etc/nginx/mime.types) e recarregue o Nginx.
Devo comprimir arquivos .mjs com gzip?
Sim — o formato comprime bem, então adicione o tipo à sua configuração de gzip/Brotli.