我从外部提供程序检索XML,并且为了调试我通常从浏览器中查看它。不幸的是,只有Internet Explorer才能将数据呈现为XML。 Chrome,Safari,Firefox等所有其他浏览器都出于某种原因将其呈现为纯文本。
有人可以解释为什么会这样吗?
感谢。
答案 0 :(得分:2)
尝试(如果可以):
text/xml
您可以在此处粘贴您的代码/返回的XML以显示错误!
稍后添加
事实上,如果XML格式不正确(例如:不能很好地转义属性在某些元素上的值)浏览器将全部显示为纯文本。尝试使用W3C XML Validator
验证文本然后正如我所说,在第一点,请求中返回的mimetype可能是错误的:我有一个例子,你有时可以在标题中找到(错误的例子):
POST /path/to/the/service/ HTTP/1.1
Host: www.example.com
Content-Type: text/plain; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
....
如果查看Content-Type
,您会看到Content-Type: text/plain; charset=utf-8
Content-Type: text/xml; charset=utf-8
,但解决此问题的唯一方法是修改使用xml文件响应的Web服务的源代码。
要验证您是否可以,例如使用Chrome按<F12>
,请选择网络并重新加载页面(指向您要查看的资源),然后查看“类型”列。