Wat is het verschil tussen tekst/xml versus applicatie/xml voor webservicereactie

Dit is meer een algemene vraag over het verschil tussen text/xmlen application/xml.
Ik ben vrij nieuw in het schrijven van webservices (REST – Jersey). Ik heb application/xmlgemaakt omdat dit is wat wordt weergegeven in de meeste tutorials / codevoorbeelden die ik heb gebruikt om te leren, maar ik ontdekte onlangs over text/xmlen vroeg me af wat er anders aan is en wanneer zou je het gebruiken boven application/xml?


Antwoord 1, autoriteit 100%

Dit is een oude vraag, maar een die vaak wordt bezocht en duidelijke aanbevelingen zijn nu beschikbaar via RFC 7303die RFC3023 overbodig maakt. In een notendop (paragraaf 9.2):

The registration information for text/xml is in all respects the same
as that given for application/xml above (Section 9.1), except that
the "Type name" is "text".

Antwoord 2, autoriteit 97%

Van de RFC (3023), onder sectie 3, XML-mediatypen:

Als een XML-document — dat wil zeggen, het onverwerkte XML-brondocument
is leesbaardoor occasionele gebruikers, text/xmlheeft de voorkeur boven
applicatie/xml. MIME user agents (en web user agents) die dat niet doen
expliciete ondersteuning hebben voor text/xml zal het behandelen als text/plain, for
bijvoorbeeld door de XML MIME-entiteit als platte tekst weer te geven.
Applicatie/xmlheeft de voorkeur wanneer de XML MIME-entiteit onleesbaar is
door toevallige gebruikers.

(nadruk van mij)


Antwoord 3, autoriteit 26%

Volgens Dit artikel Toepassing / XML heeft de voorkeur.


Bewerken

Ik heb een beetje follow-up gedaan op het artikel.

De auteur beweert dat de codering die is gedeclareerd in XML-verwerkingsinstructies, zoals:

<?xml version="1.0" encoding="UTF-8"?>

kan worden genegeerd wanneer text/xmlmediatype wordt gebruikt.

Ze ondersteunen het proefschrift met de definitie van text/*MIME TYPE FAMILIE SPECIFICATIE IN RFC 2046 , specifiek het volgende fragment:

4.1.2.  Charset Parameter
   A critical parameter that may be specified in the Content-Type field
   for "text/plain" data is the character set.  This is specified with a
   "charset" parameter, as in:
     Content-type: text/plain; charset=iso-8859-1
   Unlike some other parameter values, the values of the charset
   parameter are NOT case sensitive.  The default character set, which
   must be assumed in the absence of a charset parameter, is US-ASCII.
   The specification for any future subtypes of "text" must specify
   whether or not they will also utilize a "charset" parameter, and may
   possibly restrict its values as well.  For other subtypes of "text"
   than "text/plain", the semantics of the "charset" parameter should be
   defined to be identical to those specified here for "text/plain",
   i.e., the body consists entirely of characters in the given charset.
   In particular, definers of future "text" subtypes should pay close
   attention to the implications of multioctet character sets for their
   subtype definitions.

Volgens hen kunnen dergelijke problemen worden vermeden bij het gebruik van het application/xmlMIME-type. Of het waar is of niet, ik zou niet zo ver gaan om text/xmlte vermijden. IMHO, het is het beste om gewoon de semantiek van menselijke leesbaarheid (niet-leesbaarheid) te volgen en altijd te onthouden om de tekenset op te geven.


Antwoord 4, autoriteit 6%

application/xmlwordt door svngezien als binairtype terwijl text/xmlals tekst bestand waarvoor een diff kan worden weergegeven.

Other episodes