我收到了一个有关JSON的XML错误消息。

22 浏览
0 Comments

我收到了一个有关JSON的XML错误消息。

更新2:

我没有提到在Chromium中我没有遇到下面的错误,但是在IE8中我遇到了这个错误。

更新1:

响应头:

HTTP/1.1 200 OK

日期:Fri, 20 May 2011 15:40:23 GMT

服务器:Microsoft-IIS/6.0

X-Powered-By:ASP.NET

X-AspNet-Version:2.0.50727

缓存控制:private

内容类型:application/json; charset=utf-8

内容长度:85

原问题:

我有一个服务器端页面生成json数据,在使用jquery访问时工作得非常好。然而,当我导航到实际生成json数据的网页时,我在浏览器中收到以下客户端错误消息:

无法显示XML页

无法使用样式表查看XML输入。请纠正错误,然后单击“刷新”按钮,或稍后再试。

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

文档的顶层无效。正在处理资源'http://companyname.com/json/data.aspx?id=7

[{"key":7,"value":"Default"}]

为什么会发生这种情况,我该如何停止出现错误消息?

0
0 Comments

我在使用JSON时遇到了一个XML错误消息,通过阅读以下内容,我整理出了问题出现的原因和解决方法。

这个问题的原因是,当在IE浏览器中使用application/json作为响应的内容类型时,会出现XML错误消息。这是由于IE浏览器对JSON的支持受到限制,导致无法正确处理返回的JSON数据。

解决方法是将响应的内容类型设置为text/plain。在代码中,可以通过设置context.Response.ContentType="text/plain"来解决这个问题。此外,还需要在使用$.ajax()方法发送请求时,将dataType设置为'json',以确保数据以JSON格式传递给成功函数。

通过这种设置,即使IE浏览器对JSON的支持有限,也能够成功处理返回的JSON数据,并避免出现XML错误消息。

同样的解决方法也适用于使用jquery-file-upload插件时遇到的问题。在这种情况下,插件会自动设置contentType为multipart,但是如果需要从处理程序返回JSON数据,则需要将contentType更改为text/plain,以解决IE浏览器中出现的错误。

总结起来,通过将响应的内容类型设置为text/plain,并在请求中将dataType设置为'json',可以解决在IE浏览器中使用JSON时出现的XML错误消息。这个解决方法已经在许多人的实践中得到验证,并被证明是有效的。

0
0 Comments

我收到了一个XML错误消息的JSON问题。出现这个错误的原因是,JSON数据可能被当作text/xml类型进行传输,而浏览器试图将输出解释为XML。如果将其当作application/json类型传输,可能就不会出现这个问题。不过,为什么你要直接访问这个页面呢?

我已经将JSON数据作为Response.ContentType = "application/json"返回了。请参考上面的更新1,证明来自响应头的这一点。

关于IE8和JSON数据的问题,请参考这个相关问题:stackoverflow.com/questions/2483771/...

看起来IE将application/json重定向到XML查看器,XML查看器本身试图使用XML样式表来转换XML,但在“无效的XML”上失败了。

0
0 Comments

我在使用JSON时遇到了一个XML错误消息的问题,下面是一些解决方法:

1) 在Firefox中安装HttpFox插件,可以查看发送/接收的内容。

2) 在Firefox中安装JSON View插件,可以在浏览器中查看JSON响应。

根据原问题中的更新1,我没有安装Firefox,但根据Chromium的显示,更新1中显示的响应头就是返回的内容。

0