source

웹 서비스 응답에 대한 텍스트/xml과 애플리케이션/xml의 차이점은 무엇입니까?

ittop 2023. 10. 19. 22:45
반응형

웹 서비스 응답에 대한 텍스트/xml과 애플리케이션/xml의 차이점은 무엇입니까?

이것은 다음과 같은 차이에 대한 일반적인 질문에 가깝습니다.text/xml그리고.application/xml. 저는 웹 서비스(REST - Jersey)를 작성하는 것에 상당히 익숙합니다.저는 생산을 해왔습니다.application/xml대부분의 튜토리얼/코드 예제에 나타나지만 최근에 알게 되었습니다.text/xml그게 뭐가 다른지, 또 언제까지 사용할 것인지 궁금했어요.application/xml?

RFC(3023)의 섹션 3에서 XML 미디어 유형:

XML 문서, 즉 처리되지 않은 원본 XML 문서를 일반 사용자가 읽을 수 있는 경우, 텍스트/xml이 응용프로그램/xml보다 좋습니다.텍스트/xml에 대한 명시적인 지원이 없는 MIME 사용자 에이전트(및 웹 사용자 에이전트)는 예를 들어 XML MIME 엔티티를 일반 텍스트로 표시하여 텍스트/일반으로 처리합니다.일반 사용자가 XML MIME 엔티티를 읽을 수 없는 경우 Application/xml을 사용하는 것이 좋습니다.

(emphasis 광산)

이것은 오래된 질문이지만 자주 방문하고 명확한 권장 사항을 RFC 7303에서 사용할 수 있으며 RFC 3023을 폐지합니다.간단히 말해서 (섹션 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".

이 문서에 따르면 application/xml이 선호됩니다.


편집

기사에 대한 약간의 후속 조치를 했습니다.

저자는 XML 처리 명령에서 선언된 인코딩은 다음과 같다고 주장합니다.

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

다음의 경우 무시할 수 있습니다.text/xml미디어 유형이 사용됩니다.

그들은 다음의 정의와 함께 논문을 지지합니다.text/*RFC 2046의 MIME 타입 패밀리 사양, 구체적으로 다음 프래그먼트:

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.

그들에 의하면, 사용할 때 그러한 어려움을 피할 수 있다고 합니다.application/xmlMIME 유형.사실이든 아니든, 나는 피하려고까지 하지 않을 것입니다.text/xml. IMHO님, 인간 가독성(non-readability)의 의미론을 따르고 문자 집합을 지정하는 것을 항상 기억하는 것이 최선입니다.

application/xml에 의해 보여집니다.svn바이너리 타입으로, 반면에text/xmldiff를 표시할 수 있는 텍스트 파일로 표시됩니다.

웹 브라우저는 텍스트/평판을 평문으로 표시하는 반면 대부분의 브라우저는 구문 강조와 함께 응용 프로그램/xml을 데이터 트리로 파싱하거나 XSLT를 사용하여 변환을 선언합니다.일부 브라우저는 오류가 감지되면 응용프로그램/xml을 데이터 트리로 렌더링하지 않지만 구문의 오류에 관계없이 항상 텍스트/xml 전체를 표시합니다.

언급URL : https://stackoverflow.com/questions/4832357/whats-the-difference-between-text-xml-vs-application-xml-for-webservice-respons

반응형