Welchen MIME-Typ soll ich für eine für mein Programm spezifische Binärdatei verwenden?

231

Mein Programm verwendet einen eigenen binären Dateityp, daher gehe ich davon aus, dass ich keinen Text / Plain vom Typ MIME verwenden kann, da es sich nicht um eine 7-Bit-ASCII-Datei handelt.

Soll ich es einfach "application / myappname" nennen?

Powerbook165c
quelle

Antworten:

360

Ich würde empfehlen, application/octet-streamwie RFC2046 sagt "Der Subtyp" Octet -Stream "wird verwendet, um anzuzeigen, dass ein Body beliebige Binärdaten enthält" und "Die empfohlene Aktion für eine Implementierung, die eine Entität" application / octet-stream "empfängt, besteht darin, einfach anzubieten um die Daten in eine Datei zu legen [...] ".

Ich denke, auf diese Weise erhalten Sie eine bessere Handhabung durch beliebige Programme, die möglicherweise auftreten, wenn Sie auf Ihren unbekannten MIME-Typ stoßen.

user786653
quelle
6

Mimetyp-Header werden vom Browser zum Zweck einer (schnellen) möglichen Identifizierung eines Handlers zur Verwendung der heruntergeladenen Datei als Ziel erkannt. Beispielsweise wird PDF heruntergeladen und Ihr Adobe Reader-Programm wird mit dem Pfad der PDF-Datei als ausgeführt ein Argument,

Wenn Sie eine Browser-Erweiterung für die Verarbeitung Ihrer heruntergeladenen Datei über Ihr Betriebssystem schreiben möchten oder einfach nur ein professionelleres Projekt erstellen möchten, wählen Sie einen eindeutigen Mimetyp aus, den Sie verwenden möchten Kein Unterschied, da das Betriebssystem kein Handle zum Öffnen hätte (einige Browser haben nur wenige gebündelte Plugins, zum Beispiel haben neue Google Chrome-Versionen einen eingebauten PDF-Reader).

Wenn Sie sicherstellen möchten, dass die Datei heruntergeladen wird, sehen Sie sich diese Antwort an: https://stackoverflow.com/a/34758866/257319

Wenn Sie Ihren Dateityp besonders gut organisieren möchten, lohnt es sich möglicherweise, ein paar Buchstaben in die ersten Bytes der Datei einzufügen. Beispielsweise hat jedes JPG dies beim Dateistart:

Wenn Sie sich einen Sprung von 4 oder 8 Bytes leisten können, könnte dies für den Rest des Weges sehr hilfreich sein

:) :)

Gemeinschaft
quelle
2

Gemäß der Spezifikation RFC 2045 #Syntax des Content-Type-Header-Felds application/myappname ist nicht zulässig, aber application/x-myappnamezulässig und klingt für Ihre Anwendung bei mir am besten geeignet.

Nate
quelle