text/xml和application/xml

困惑

在http消息中,同样是传送xml信息,有的时候看到Content-Type的值是text/xml,有的时候值是application/xml,感到困惑。

例如,用Postman发送http消息给Tomcat中的基于JAX-WS的 web服务:
请求中传送了xml内容,Content-Type是application/xml:
text/xml和application/xml_第1张图片

响应中返回了xml内容,Content-Type是text/xml:
text/xml和application/xml_第2张图片

解答

今天研究了下,看了几篇RFC。
结论:这两个都是合法的,都可以使用,现在没有什么区别,但仍然推荐使用application/xml

在历史上的RFC规范中,这两个确实有区别,但旧的的RFC不断被新的RFC所代替,例如RFC3023(https://www.rfc-editor.org/rfc/rfc3023),现在已经被RFC7303替换。

现在的RFC7303:https://www.rfc-editor.org/rfc/rfc7303.html
在这里插入图片描述

对text/xml和application/xml的描述,摘录部分:
text/xml和application/xml_第3张图片

text/xml和application/xml_第4张图片
text/xml和application/xml_第5张图片

text/xml和application/xml_第6张图片

你可能感兴趣的:(xml,http,媒体类型)