Un navigateur décide comment traiter un fichier selon l'en-tête Content-Type : le mauvais type provoque le téléchargement de la page au lieu de son rendu, ou bloque une police qu'il devrait charger. Une table de consultation garde la réponse à portée sans quitter le navigateur. La Recherche de Types MIME embarque une table statique de 125 lignes qui mappe les extensions vers les types MIME et catégories, avec recherche, filtre par catégorie et export CSV, le tout côté client, rien n'est envoyé.
125 lignes, 5 catégories
La table garde 125 entrées en 5 catégories : 26 Text, 16 Image, 11 Audio, 12 Video et 60 Application, qui couvrent 124 extensions distinctes car .ts apparaît deux fois. En sommant la longueur de toutes les chaînes de type, la table pèse 2 098 caractères. Chaque ligne affiche l'extension en police monospace, le type et un badge de catégorie coloré. La boîte de recherche effectue une correspondance de sous-chaîne insensible à la casse sur l'extension et la chaîne MIME, et se combine avec les filtres de catégorie.
5 ressources sur une page
Une page typique sert app.js, data.csv, logo.png, film.mp4 et font.woff2. Cinq recherches donnent text/javascript sous Text, text/csv sous Text, image/png sous Image, video/mp4 sous Video et font/woff2 sous Application. Le badge et la famille MIME ne coincident pas toujours : .mjs et .cjs portent text/javascript mais sont dans Application, tandis que .svg est image/svg+xml et vit dans Text.
La recherche correspond à des sous-chaînes dans les deux champs
Taper image renvoie 19 lignes, pas les 16 lignes de la catégorie Image, car .svg est dans Text et .dmg avec .iso sont dans Application alors que leurs chaînes de type contiennent le mot image. Taper mp renvoie 9 lignes, dont .bmp car bmp contient mp, .ts via video/mp2t, et .rar avec .7z via le mot compressed dans x-rar-compressed. Taper ts renvoie 8 lignes, et .docx, .xlsx et .pptx apparaissent parce que leurs longs types de bureau finissent par formats.
Le doublon de .ts et 16 types partagés
Le doublon de .ts est le seul de la table : il renvoie video/mp2t, le flux de transport MPEG sous Video, et text/typescript sous Application, ce qui explique que 125 lignes ne couvrent que 124 extensions. Seize types sont partagés par plusieurs extensions : text/plain couvre 5 (.txt, .ini, .cfg, .log, .env), text/javascript couvre 4 (.js, .jsx, .mjs, .cjs), image/jpeg couvre 2. Le type le plus long fait 73 caractères (.pptx), le plus court 8 (text/css, text/xml, text/csv). Pour les fichiers image la question est souvent la dimension et le format, que la Visionneuse d'informations d'image indique, et un ré-encodage avec la Compresseur d'Images de png vers webp change le type à déclarer.
43 types x- de vendeur non enregistrés
Quarante-trois des 125 lignes utilisent le préfixe x- de vendeur : video/x-matroska, application/x-rar-compressed, image/x-icon, text/x-sql. Ce sont des standards de fait jamais enregistrés auprès de l'IANA, que tous les navigateurs et serveurs respectent, tandis que le noyau enregistré (image/png, video/mp4, application/json) reste stable. Quand l'extension ment, la réponse honnête est dans les octets : le Convertisseur Hex UTF-8 Base64 affiche les octets magiques qui révèlent le conteneur réel.
Où va la chaîne de type
Une fois obtenue, la chaîne entre dans une configuration serveur, un en-tête d'API ou un data URI. L'Encodeur/Décodeur Base64 construit des URI data:image/png;base64 dont le préfixe de type vient directement de cette table. Le Convertisseur CSV vers JSON transforme le mime-types.csv exporté en un mappe JSON pour le code. Le Formatteur JSON valide la charge qui voyage avec Content-Type application/json. Pour le côté text/html d'une page web par défaut, voir le guide de formatage HTML.