🧰 UtlKit

MIME-Typen Nachschlagen: Wie eine Tabelle mit 125 Zeilen 124 Erweiterungen auf 5 Kategorien Abbildet, mit dem Duplizierten .ts Eintrag, den 43 x- Vendor Typen und den CSV Export Regeln Erklärt

Schlage jede Erweiterung in einer 125 Zeilen Tabelle von MIME-Typen über 5 Kategorien nach: Suche trifft Teilstrings auf Erweiterung und Typ, .ts liefert zwei Typen, 43 Zeilen tragen das x- Präfix, und die gefilterte Ansicht exportiert nach CSV.

Ein Browser entscheidet anhand des Content-Type-Headers, wie er eine Datei behandelt: Der falsche Typ lässt die Seite herunterladen statt sie darzustellen, oder blockiert eine Schrift, die er laden sollte. Eine Nachschlagetabelle hält die Antwort griffbereit, ohne den Browser zu verlassen. Das MIME-Typen-Nachschlagewerk bringt eine statische Tabelle mit 125 Zeilen, die Erweiterungen auf MIME-Typen und Kategorien abbildet, mit Suche, Kategoriefilter und CSV-Export, alles clientseitig, nichts wird hochgeladen.

125 Zeilen, 5 Kategorien

Die Tabelle hält 125 Einträge in 5 Kategorien: 26 Text, 16 Image, 11 Audio, 12 Video und 60 Application, die 124 verschiedene Erweiterungen abdecken, weil .ts zweimal vorkommt. Addiert man die Länge aller Typstrings, wiegt die Tabelle 2.098 Zeichen. Jede Zeile zeigt die Erweiterung in Monospace, den Typ und ein farbiges Kategorie-Badge. Das Suchfeld vergleicht Teilstrings ohne Rücksicht auf Groß- und Kleinschreibung auf Erweiterung und MIME-String und lässt sich mit den Kategorie-Chips kombinieren.

5 Ressourcen auf einer Seite

Eine typische Seite liefert app.js, data.csv, logo.png, film.mp4 und font.woff2. Fünf Suchen ergeben text/javascript unter Text, text/csv unter Text, image/png unter Image, video/mp4 unter Video und font/woff2 unter Application. Badge und MIME-Familie stimmen nicht immer überein: .mjs und .cjs tragen text/javascript, sitzen aber in Application, während .svg image/svg+xml ist und in Text lebt.

Suche trifft Teilstrings in beiden Feldern

image liefert 19 Zeilen, nicht die 16 Zeilen der Kategorie Image, denn .svg liegt unter Text und .dmg mit .iso unter Application, ihre Typstrings enthalten das Wort image. mp liefert 9 Zeilen, darunter .bmp, weil bmp mp enthält, .ts über video/mp2t sowie .rar und .7z über das Wort compressed in x-rar-compressed. ts liefert 8 Zeilen, und .docx, .xlsx und .pptx erscheinen, weil ihre langen Office-Typen auf formats enden.

Die .ts-Kollision und 16 geteilte Typen

Die .ts-Kollision ist die einzige der Tabelle: Sie liefert video/mp2t, den MPEG-Transportstrom unter Video, und text/typescript unter Application, weshalb 125 Zeilen nur 124 Erweiterungen abdecken. Sechzehn Typen teilen sich mehrere Erweiterungen: text/plain deckt 5 ab (.txt, .ini, .cfg, .log, .env), text/javascript deckt 4 ab (.js, .jsx, .mjs, .cjs), image/jpeg deckt 2 ab. Der längste Typ hat 73 Zeichen (.pptx), der kürzeste 8 (text/css, text/xml, text/csv). Bei Bilddateien geht es oft um Dimensionen und Format, was der Bild-Info-Anzeiger meldet, und ein Re-Encode über den Bildkompressor von png nach webp ändert den zu deklarierenden Typ.

43 unregistrierte x- Vendor-Typen

Dreiundvierzig der 125 Zeilen benutzen das x- Vendor-Präfix: video/x-matroska, application/x-rar-compressed, image/x-icon, text/x-sql. Es sind De-facto-Standards, die nie bei der IANA registriert wurden, doch jeder Browser und Server beachtet sie, während der registrierte Kern (image/png, video/mp4, application/json) stabil bleibt. Wenn die Erweiterung lügt, liegt die ehrliche Antwort in den Bytes: der Hex UTF-8 Base64 Umrechner zeigt die Magic Bytes, die den wahren Container enthüllen.

Wohin der Typstring geht

Sobald man den String hat, geht er in eine Server-Konfiguration, einen API-Header oder ein data URI. Der Base64-Encoder/-Decoder baut data:image/png;base64-URIs, deren Typ-Präfix direkt aus dieser Tabelle kommt. Der CSV zu JSON Konverter macht aus dem exportierten mime-types.csv eine JSON-Mappe für den Code. Der JSON-Formatierer validiert die Last, die mit Content-Type application/json reist. Für die text/html-Seite einer Standard-Webseite siehe den HTML-Formatierungs-Guide.

Zugehörige Tools

Häufige Fragen

Warum liefert .ts zwei verschiedene MIME-Typen?

Weil .ts zwei Dateifamilien benennt: den MPEG-Transportstrom (video/mp2t, Video), den Broadcast-Player nutzen, und die TypeScript-Quelldatei (text/typescript, Application). Die Tabelle listet beide Zeilen und die Suche liefert beide, du wählst nach Projektkontext. Das ist die einzige doppelte Erweiterung, weshalb 125 Zeilen nur 124 verschiedene Erweiterungen abdecken.

Warum liefert die Suche image 19 Zeilen, wenn die Kategorie Image nur 16 hat?

Weil die Suche einen Teilstring der Erweiterung oder des MIME-Strings trifft, nicht die Kategorie. Neben den 16 Image-Zeilen liegt .svg (image/svg+xml) unter Text, und .dmg (application/x-apple-diskimage) mit .iso (application/x-iso9660-image) unter Application, und alle drei zusätzlichen Typstrings enthalten das Wort image. Die 19 Zeilen sind die ehrliche Zählung dessen, was die Strings enthalten.

Was macht der CSV-Export konkret?

Er lädt die aktuelle gefilterte Ansicht als mime-types.csv mit einem 3-Spalten-Header (Extension, MIME Type, Category) herunter und gibt eine Zeile pro sichtbarem Eintrag aus. Bei ausgewähltem All und leerer Suche sind das 125 Zeilen. Der Export baut einen text/csv-Blob ganz im Browser, nichts wird hochgeladen, das macht ihn sicher für ein Intranet oder eine Compliance-Prüfung.

Was bedeutet das x- Präfix in einem MIME-Typ?

Es kennzeichnet einen vendor-spezifischen oder nicht registrierten Typ. 43 der 125 Zeilen nutzen es: video/x-matroska, application/x-rar-compressed, image/x-icon. Diese Typen waren nie bei der IANA registriert, doch jeder Browser und Server beachtet sie, sie sind also sicher zu bedienen. Wo du wählen kannst, bevorzugst du einen registrierten Typ wie image/png oder video/mp4.

Enthält die Tabelle jede Erweiterung?

Nein. Sie hält 125 Zeilen für 124 Erweiterungen und deckt die üblichen Web-Ressourcen ab. .mpg (der MPEG-1 Programmstrom) fehlt, .m3u8 ist da, und .svg liegt in Text, nicht in Image. Für eine Erweiterung, die die Tabelle nicht kennt, schau in das IANA-Register oder die Dateimappe deines Frameworks, bevor du ratst.

Verwandte Artikel