无法使用IE打开文本文件

时间:2010-10-18 17:49:45

标签: internet-explorer

对于我们的应用程序,我们登录记事本。我们为用户提供了Web URL以查看日志。我们将文件保存在文件系统中。我们的用户无法打开某些日志文件。有人能帮我一下吗?我们将text / xml存储在.txt文件中。我们在尝试查看日志文件时遇到以下错误

The XML page cannot be displayed 
Cannot view XML input using style sheet. Please correct the error and then click 
the Refresh button, or try again later. 

--------------------------------------------------------------------------------

Invalid at the top level of the document. Error processing resource 

如果有人可以帮助我,我可以发送.txt文件给他们。此文本文件在Chrome和Firefox中成功打开

“保存为.txt并尝试用IE打开”

2010-10-14 08:38:49,452 [1]调查 -

UserHostAddress 198.96.178.33 UserHostName 198.96.178.33 UserAgent Jakarta Commons-HttpClient / 3.0.1 10/14/2010 8:38:49 AM 要求factivafacpassword1230IBM1100Name10 / 14/2010 08:38:45

2010-10-14 08:38:51,983 [1]调查 -

回复10/14/2010 8:38:51 AM  13201116695SANIBM加拿大信贷服务公司,加拿大曼尼托巴证券委员会执法令&例外情况3201158540SANInternational Business Machines Corporation,United StatesSEC - 诉讼发布210/1/14/208 8:38:51 AM 2010-10-14 08:39:30,452 [7] DEBUG -

UserHostAddress 198.96.178.33 UserHostName 198.96.178.33 UserAgent Jakarta Commons-HttpClient / 3.0.1 10/14/2010 8:39:30 AM 要求factivafacpassword1230CFX Holdings1100Name10 / 14/2010 08:39:30

2010-10-14 08:39:30,967 [7]调查 -

回复10/14/2010 8:39:30 AM  1010/14/2010 8:39:30 AM

2 个答案:

答案 0 :(得分:2)

IE正在将该文件解释为xml文档并尝试将其打开。但该文件似乎没有正确的xml格式。因此你得到了错误。

答案 1 :(得分:1)

听起来你被嗅闻类型所困扰。

当IE收到text/plain类型的资源时(通常会为.txt提供服务),它不信任该类型。

(这是因为当Web服务器不知道资源是什么类型时,默认传递类型text/plain,而不是简单地省略Content-Type标题。这是错误的事情,但是大多数网络服务器都这样做。)

相反,IE会查看文件的开头,以查看其中是否存在可识别的内容。如果它看起来像<?xml看起来像XML,那么它将决定整个文件是text/xml,而不是像服务器所说的那样text/plain。这当然也是错误的事情,并且在过去引起了一些严重的安全问题,但MS现在不能在IE中禁用它而不会破坏现有管理不善的网站。

IE嗅探的确切时间,方式和类型是complicated story。在IE8 +中,您可以通过额外标题返回text/plain资源来避免这种不愉快:

X-Content-Type-Options: nosniff

作为detailed on the IEBlog

对于早期版本的IE,很难阻止text/plain资源中的随机任意文本抛弃嗅探器。如果您需要支持这些IE版本,一个简单但丑陋的解决方案是使用无内容填充(例如256个空格)填充文件的前256个字节。嗅探器只查看文件的这一部分。