Ist der MIME-Typ 'image / jpg' der gleiche wie 'image / jpeg'?

341

Ziemlich einfache Frage, kann sie aber nirgendwo online finden. Ich versuche ein Programm zu erstellen, das mir je nach Dateityp die Erweiterung gibt.

Joe Scotto
quelle
10
AFAIK gibt es nur den Typ "image / jpeg" freeformatter.com/mime-types-list.html#mime-types-list
Dale
Muss dann spät in der Nacht Verwirrung sein. Ich werde es einfach mit "image / jpeg" versuchen.
Joe Scotto

Antworten:

493

Nein, image/jpgist nicht dasselbe wie image/jpeg, wird nur image/jpegals tatsächlicher MIME-Typ für JPEG-Dateien erkannt.

Siehe https://tools.ietf.org/html/rfc3745 , https://www.w3.org/Graphics/JPEG/ .

Das Bereitstellen des falschen Inhaltstyps für image/jpgden Internet Explorer kann zu Problemen führen (siehe http://www.bennadel.com/blog/2609-internet-explorer-aborts-images-with-the-wrong-mime-type.htm) .

Adrian Baker
quelle
3
Was sollen wir in unsere mime.types einfügen? image/jpeg jpeg jpg;image/jpg jpeg jpg;
Cyber8200
40
Nur Bild / JPEG
James Bone
Das Hauptproblem, das dadurch verursacht wird, ist, dass Safari einen Bildlink in der Vorschau anstatt im Browserfenster öffnet, weil es denkt, dass es sich um einen unbekannten Bildtyp handelt (was technisch gesehen der Fall ist).
Peter Flynn
16

Für diejenigen, die es helfen könnten, verwende ich diese Liste als Referenz, um meinen Inhaltstyp zu definieren, wenn ich mit Bildern in meiner App arbeiten muss.

Es heißt, dass die JPG-Erweiterung mit deklariert werden kann Content-type : image/jpeg

Es gibt kein image/jpgAttribut für den Inhaltstyp.

lucyjosef
quelle
7

tl; dr die "Standards" sind ein Durcheinander; es kommt darauf an, wen du fragst!

Insgesamt scheint es keinen MIME-Typ zu geben image/jpg. In der Praxis verarbeitet jedoch fast jede Software Bilddateien mit dem Namen " *.jpg" einwandfrei.
Dieses spezielle Thema ist verwirrend, da die unterschiedliche Zuordnung der Dateinamenerweiterung zu einem MIME-Typ davon abhängt, welche Organisation die Tabelle der Dateinamenerweiterungen für MIME-Typen erstellt hat. Mit anderen Worten, die Dateinamenerweiterung .jpgkann viele verschiedene Dinge sein.

Hier sind beispielsweise drei "vollständige Listen" und ein RFC, die sich je nach Dateinamenerweiterungen im JPEG-Bildformat und den zugehörigen MIME-Typen unterscheiden.

Diese "vollständigen Listen" und RFC haben keinen MIME-Typ image/jpg! Aber für MIME - Typ image/jpegeinige Listen Sie haben unterschiedliche Dateinamenerweiterungen ( .jpeg, .jpg, ...). Andere Listen erwähnen nicht image/jpeg.
Es gibt auch verschiedene Arten von JPEG-Bildformaten (z. B. progressives JPEG-Bildformat , JPEG 2000 usw.) und "JPEG-Erweiterungen", die sich in der Dateinamenerweiterung und dem deklarierten MIME-Typ möglicherweise überschneiden oder nicht.
Eine andere verwirrende Sache ist, dass RFC 3745 anscheinend nicht mit IANA-Medientypen übereinstimmt, der RFC 3745 jedoch das Dokument IANA-Medientypen informieren soll . Zum Beispiel in RFC 3745 .jpfist die bevorzugte Dateierweiterung für, image/jpxaber in IANA-Medientypen ist der Name jpfnicht vorhanden (und das IANA-Dokument verweist auf RFC 3745 !).
Eine weitere verwirrende Sache ist, dass IANA Media Types "Namen" auflistet, jedoch keine "Dateinamenerweiterungen". Dies ist absichtlich, verwirrt jedoch das Bestreben, Dateinamenerweiterungen MIME-Typen zuzuordnen.
Eine weitere verwirrende Sache: es ist „ Mime “ oder „ MIME “ oder „ MIME - Typ “ oder „ MIME - Typ “ oder „ mime / Typ “ oder „ Medientyp “⁉ 😧

Das offizielle scheinbare Dokument von der IANA ist überraschend unzureichend. Es ist kein MIME-Typ für die Dateierweiterung registriert, .jpges gibt jedoch die ungerade vnd.sealedmedia.softseal.jpg. Die Dateierweiterung .JPEGwird nur als videoTyp bezeichnet, während die Dateierweiterung .jpegein Bildtyp ist (wann spielten Klein- und Großbuchstaben eine Rolle!?). Gleichzeitig jpeg2000ist Typ videonoch RFC 3745 betrachtet JPEG 2000 als imageTyp! Die IANA-Liste scheint unternehmensspezifische JPEG-Formate (z vnd.sealedmedia.softseal.jpg. B. ) zu berücksichtigen .

Aufgrund der vorherigen Verwirrungen ist es schwierig, ein branchenweit anerkanntes kanonisches Dokument zu finden, das Dateinamenerweiterungen MIME-Typen zuordnet, insbesondere für das JPEG-Bilddateiformat.



Verwandte Frage " Liste ALLER MimeTypes auf dem Planeten, die Dateierweiterungen zugeordnet sind? ".

JamesThomasMoon1979
quelle
Normalerweise gibt es nur EINE Quelle, die den betreffenden Standard beschreibt, nicht 4 (!). RFC ist ein guter Einstiegspunkt!
simUser
4

Wichtig hierbei ist, dass der MIME-Typ nicht mit der Dateierweiterung übereinstimmt. Manchmal haben sie jedoch den gleichen Wert.

https://www.iana.org/assignments/media-types/media-types.xhtml enthält eine Liste der registrierten Mime-Typen, obwohl Sie nichts daran hindert, Ihre eigenen zu erstellen, solange Sie beide senden und das empfangende Ende. Hier kommt Microsoft ins Spiel.

Wo es viel Verwirrung gibt, ist die Tatsache, dass Betriebssysteme ihre eigene Art haben, Dateitypen zu identifizieren, indem sie das Ende des Dateinamens verwenden, der als Erweiterung bezeichnet wird. In modernen Betriebssystemen ist der gesamte Name eine lange Zeichenfolge, in primitiveren Betriebssystemen wird er jedoch als separates Attribut behandelt.

Das Betriebssystem, das die Verwirrung verursachte, ist MSDOS, das die Erweiterung auf 3 Zeichen beschränkt hatte. Diese Einschränkung wird bis heute bei Geräten wie SD-Karten übernommen, die Daten weiterhin auf dieselbe Weise speichern.

Ein Nebeneffekt dieser Einschränkung besteht darin, dass einige Dateierweiterungen, z. B. .gifderen MIME-Typ, übereinstimmen image/gif, während andere gefährdet sind. Dies schließt ein, image/jpegdessen Erweiterung auf verkürzt wird .jpg. Selbst in modernen Windows-Versionen, in denen die Einschränkung aufgehoben wird, lässt Microsoft die Vergangenheit nie los. Daher ist die Dateierweiterung immer noch die verkürzte Version.

Vorausgesetzt, dass:

  1. Dateierweiterungen sind keine Dateitypen
  2. In der Vergangenheit hatten einige Betriebssysteme schwerwiegende Einschränkungen bei Dateinamen
  3. Einige Betriebssysteme erstellen einfach ihre eigenen Regeln

Die kurze Antwort lautet:

  • Technisch gibt es so etwas nicht image/jpg, also lautet die Antwort, dass es nicht dasselbe ist wieimage/jpeg
  • Das hindert einige Betriebssysteme und Software nicht daran, es so zu behandeln, als ob es dasselbe wäre

Während wir gerade dabei sind ...

Ältere Versionen von Internet Explorer haben sich die Freiheit genommen, jpegDateien mit dem Mime-Typ von hochzuladen image/pjpeg, was natürlich nur mehr Arbeit für alle anderen bedeutet. Sie haben auch pngDateien als hochgeladen image/x-png.

Manngo
quelle