Domanda

Pensavo che avrei dovuto inviare "text/xml", ma poi ho letto che avrei dovuto inviare "application/xml".Importa?Qualcuno può spiegare la differenza?

È stato utile?

Soluzione

the differenza tra testo / xml e applicazione / XML è la codifica dei caratteri predefinita se il parametro charset viene omesso:

.

Testo / XML e applicazione / XML si comportano in modo diverso quando il charset Il parametro non è specificato esplicitamente. Se il charset predefinito (I.e., US-ASCII) per testo / XML è scomodo per qualche motivo (ad esempio, cattiva rete Server), Application / XML fornisce un'alternativa (vedi "opzionale Parametri "della registrazione applicazione / XML nella sezione 3.2).

per testo / xml : .

.

Conformato con [RFC2046], se viene ricevuto un'entità di testo / XML Il parametro dei charset omesso, processori MIME e processori XML DEVE utilizzare il valore del charset predefinito di "US-ASCII" [ASCII]. Nei casi dove l'entità MIME XML viene trasmessa tramite http, il valore predefinito Il valore del charset è ancora "US-ASCII".

per Applicazione / xml : .

.

Se viene ricevuta un'applicazione / entità XML dove il charset il parametro è omesso, non viene fornita alcuna informazione sul DA CHANSET DALLA TIPO DI CONTENUTO MIME. Conformando XML. I processori devono seguire i requisiti nella sezione 4.3.3 di [XML] che indirizza direttamente questa contingenza. Tuttavia, i processori MIME che i processori XML non dovrebbero assumere un danno predefinito se Il parametro dei charset viene omesso da un'applicazione / entità XML.

Quindi se il parametro charset viene omesso, la codifica dei caratteri di text / xml è US-ASCII mentre con Application / XML il personaggio La codifica può essere specificata nel documento stesso.

Ora una regola generale su Internet è: "Sii rigoroso con l'output ma essere tollerante con l'input". Ciò significa assicurarsi di soddisfare gli standard il più possibile durante la consegna di dati su Internet. Ma costruire in alcuni meccanismi per trascurare i difetti o per indovinare quando si ricevono e interpretare i dati su Internet.

Così nel tuo caso scegli uno dei due tipi (consiglio Application / XML ) e assicurati di specificare correttamente la codifica dei caratteri usati (consiglio di utilizzare la rispettiva codifica dei caratteri predefinita per giocare Cassaforte, quindi in caso di Applicazione / XML Utilizzo UTF-8 o UTF-16).

Altri suggerimenti

Come regola generale, la scommessa più sicura verso il trattamento del documento è considerato correttamente da tutti i server Web, i proxy e i browser client, è probabilmente il seguente:

    .
  1. Utilizzare l'applicazione / tipo di contenuto XML
  2. Includi una codifica del carattere nel tipo di contenuto, probabilmente UTF-8
  3. include una codifica dei caratteri corrispondenti nell'attributo di codifica del documento XML stesso.
  4. In termini di RFC 3023 Spec, che alcuni browser non implementano correttamente, il maggiore La differenza nei tipi di contenuto è in come i client dovrebbero trattare la codifica dei caratteri, come segue:

    Per applicazione / XML, applicazione / XML-DTD, applicazione / entità analizzata XML-esterno o qualsiasi dei sottotipi di applicazione / XML come Applicazione / Atom + XML, Applicazione / RSS + XML o applicazione / RDF + XML, la codifica dei caratteri è determinata in questo ordine:

      .
    1. La codifica fornita nel parametro del chartset dell'intestazione HTTP del contenuto
    2. La codifica indicata nell'attributo codifica della dichiarazione XML all'interno del documento,
    3. utf-8.
    4. Per testo / xml, testo / xml-esterno analizzato-entità o un sottotipo come testo / foo + xml, l'attributo codifica della dichiarazione XML all'interno del documento viene ignorato e la codifica dei caratteri è: .

    5. La codifica fornita nel parametro del charset dell'intestazione HTTP tipo contenuto o
    6. US-ASCII.
    7. La maggior parte dei parser non implementa le specifiche; Ignorano il tipo di contesto HTTP e semplicemente utilizzare la codifica nel documento. Con così tanti documenti mal formati là fuori, è improbabile che cambi presto.

Entrambi stanno bene.

Text / XXX significa che nel caso in cui il programma non capisca xxx ha senso mostrare il file all'utente come testo normale.Applicazione / XXX significa che è inutile mostrarlo.

Si prega di notare che tali tipi di contenuto sono stati originariamente definiti per l'allegato e-mail prima che vengano utilizzati in seguito nel World Web.

Text / XML è per documenti che sarebbero significativi per un essere umano se presentato come testo senza ulteriori elaborazioni, applicazione / XML è per tutto il resto

.

Ogni entità XML è adatta per l'uso con l'applicazione / supporto XML tipo senza modifiche. Ma questo non sfrutta il fatto XML può essere considerato come testo normale in molti casi. Agenti utente MIME. (e agenti utente Web) che non hanno un supporto esplicito per Applicazione / XML lo tratterà come applicazione / ottetto-flusso, per Esempio, offrendo di salvarlo in un file.

per indicare che un'entità XML deve essere trattata come testo normale da Impostazione predefinita, utilizzare il tipo di supporto Text / XML. Questo limita la codifica usato nell'entità XML a coloro che sono compatibili con il Requisiti per i tipi di mezzi di testo come descritto in [RFC-2045] e [RFC-2046], E.G., UTF-8, ma non UTF-16 (eccetto per HTTP).

- http://www.ietf.org/rfc/rfc2376.txt

Altre risposte qui affrontano la domanda generale su cosa sia corretto Content-Type per una risposta XML è, e concludere (come con Qual è la differenza tra text/xml e application/xml per la risposta del servizio web) che entrambi text/xml E application/xml sono ammissibili.Tuttavia, nessuno specifica se esistano regole specifiche mappe del sito.

Risposta:non ci sono.Le specifiche della mappa del sito sono https://www.sitemaps.org, e utilizzando Google site: ricerche puoi confermare che non contiene parole o frasi mimo, mimetipo, tipo di contenuto, applicazione/xml, O testo/xml ovunque.In altre parole, sull'argomento "che cosa" tace del tutto Content-Type dovrebbe essere usato per servire le mappe dei siti.

In assenza di commenti nelle specifiche della mappa del sito che affrontino direttamente questa domanda, possiamo tranquillamente presumere che si applichino le stesse regole di quando si sceglie la Content-Type di qualsiasi altro documento XML - ad es.che potrebbe essere l'uno o l'altro text/xml O application/xml.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top