Extensões, formatos e media types
Objetivo
Distinguir nome/extensão, formato real e media type.
Conceitos essenciais
Extensão
Extensão é uma convenção no nome, como .txt, .png ou .json. Renomear a extensão não converte os bytes do arquivo.
Formato
Formato define estrutura e regras para interpretar o conteúdo.
Assinaturas
Alguns formatos possuem magic numbers ou assinaturas que ajudam a reconhecê-los, mas isso não é universal.
Media type
Media type, tradicionalmente chamado MIME type, identifica tipos de conteúdo em protocolos como HTTP: text/html, application/json, image/png.
Segurança
Confiar apenas na extensão fornecida por upload pode ser inseguro; sistemas reais validam tipo, conteúdo e política.
Modelo mental
NOME.ext → indício; BYTES + FORMATO → conteúdo; MEDIA TYPE → declaração de tipoExemplo e demonstração
Renomear foto.png para foto.txt não transforma a imagem em texto; um editor de texto continuará encontrando bytes estruturados como imagem.
Experimento / prática
- Escolha três arquivos e compare extensão e tipo indicado pelo SO.
- Explique por que um upload chamado documento.pdf não deve ser aceito apenas pelo nome.
Erros comuns
- Extensão define magicamente o formato.
- Todo arquivo possui magic number.
- MIME type e extensão são sempre equivalentes.
Resumo
Ao concluir esta aula, revise o modelo mental e tente explicá-lo com suas próprias palavras antes de avançar.