Als is defined in RFC 1341:
In der erweiterten BNF-Notation von RFC 822, ein Content-Type-Header-Feld Wert ist wie folgt definiert:
Content-Type: = Typ "/" Untertyp * [";" Parameter]
Typ: = "application"/"audio" /"Bild"/"message" /"Multipart"/"text" /"video"/x-Token
x-Token : = < Die beiden Zeichen "X" verfolgt, ohne Leerraum dazwischen, von jedem Token>
Subtyp: = Token
Parameter: = Attribut "=" value
attribute: token =
Wert: = Token/zitiert-string
token: = 1 *
tspecials: = "("/")"/"<"/">"/"@"; Muss in /","/";" sein/":"/"\"/< ">; Anführungszeichenfolge, /"/"/" ["/"] "/"? "/". "; Zu verwenden innerhalb /" = "; Parameterwerte
und a list of known MIME types dass es folgen kann (oder, wie Joe bemerkt, the IANA source).
wie Sie die Liste sehen viel zu groß ist für Sie gegen alle von ihnen zu bestätigen. Was Sie tun können, ist validiere gegen das allgemeine Format und das type
Attribut, um sicherzustellen, dass es korrekt ist (die Menge der Optionen ist klein) und gehe einfach davon aus, dass das, was folgt, korrekt ist (und natürlich alle Ausnahmen abfängt, wenn du es tatsächlich verwendest)
Beachten Sie auch den Kommentar oben:
Wenn eine andere primäre Art aus irgendeinem Grund verwendet werden soll, muss es einen Namen beginnend mit „X-“ gegeben werden, um ihre Nicht-Standard-Status anzuzeigen und zu vermeiden jeder mögliche Konflikt mit einem zukünftigen offiziellen Namen.
Sie werden feststellen, dass viele HTTP-Anfragen/Antworten einen X-
Kopf irgendeiner Art enthalten, die definiert sich selbst sind, denken Sie daran, wenn die Typen der Validierung.
Gültige Medientypen sollen bei der IANA werden - Sie eine aktuelle Liste finden Sie hier: http: //www.iana.org/assignments/media-types/media-types.xhtml Beachten Sie jedoch, dass sich diese Liste im Laufe der Zeit aktualisieren kann. Es gibt keine feste erlaubte Liste. – Joe