Ich muss den Content-Type
Header-Wert überprüfen, bevor ich ihn an eine HTTP-Anforderung übergebe.
Gibt es eine spezifische Liste für alle möglichen Werte von Content-Type
?
Gibt es andernfalls eine Möglichkeit, den Inhaltstyp zu überprüfen, bevor er in einer HTTP-Anforderung verwendet wird?
Antworten:
Sie finden jeden Inhaltstyp hier: http://www.iana.org/assignments/media-types/media-types.xhtml
Die häufigsten Typen sind:
Geben Sie application ein
Geben Sie Audio ein
Bild eingeben
Geben Sie mehrteilig ein
Text eingeben
Video eingeben
Geben Sie vnd ein:
quelle
Wie in RFC 1341 definiert :
Und eine Liste bekannter MIME-Typen , die darauf folgen können (oder, wie Joe bemerkt, die IANA-Quelle ).
Wie Sie sehen, ist die Liste viel zu groß, als dass Sie sie gegen alle validieren könnten. Was Sie tun können, ist anhand des allgemeinen Formats und des
type
Attributs zu validieren , um sicherzustellen, dass es korrekt ist (der Satz von Optionen ist klein), und einfach davon auszugehen, dass das Folgende korrekt ist (und natürlich alle Ausnahmen zu erfassen, die beim Einfügen auftreten können zur tatsächlichen Verwendung).Beachten Sie auch den obigen Kommentar:
Sie werden feststellen, dass viele HTTP-Anforderungen / -Antworten einen
X-
selbst definierten Header enthalten. Beachten Sie dies bei der Überprüfung der Typen.quelle
Ich würde versuchen, eine Teilmenge möglicher "Inhaltstyp" -Werte abzudecken. Ihre Frage scheint sich auf die Identifizierung bekannter Inhaltstypen zu konzentrieren.
@Jeroen RFC 1341 Referenz ist groß, aber für eine ziemlich vollständige Liste der IANA hält eine Web - Seite der offiziell registrierten Medientypen hier .
quelle
Wenn Sie jaxrs oder eine andere verwenden, gibt es eine Klasse namens mediatype.User interceptor, bevor Sie die Anforderung senden und mit dieser vergleichen.
quelle