为什么IE不在屏幕上显示操作结果

19 浏览
0 Comments

为什么IE不在屏幕上显示操作结果

在调试使用AJAX的jQuery应用程序时,我经常需要查看服务返回给浏览器的JSON数据。因此,我会将JSON数据的URL放入地址栏中。

这在ASPNET中很方便,因为在代码错误的情况下,我可以在浏览器中看到ASPNET的诊断信息:

alt text

但是当服务器端代码正常工作并实际返回JSON时,IE会提示我下载,因此我无法看到响应。

alt text

我能让IE不这样做吗,换句话说,只是将其显示为纯文本?

我知道如果将Content-Type标头设置为text/plain,我可以做到这一点。

但这特指于ASPNET MVC应用程序的上下文,当我在其中的一个动作方法上使用JsonResult时,它会自动设置响应。此外,我也希望保持适当的内容类型,而不是仅为了支持调试而更改它。

0
0 Comments

为什么IE在屏幕上不显示动作结果?

IE8可以通过更新注册表来配置以在浏览器窗口中显示application/json。不需要外部工具。尽管我没有进行广泛测试,但在Vista上的IE8上可以使用。使用此方法时,请记住,关于更新注册表的所有常规注意事项都适用。停止IE。然后,将以下内容复制并粘贴到名为json-ie.reg的文件中。

Windows Registry Editor Version 5.00

;

; Tell IE to open JSON documents in the browser.

; 25336920-03F9-11cf-8FD0-00AA00686F13是“浏览中浏览”的CLSID。

;

[HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/json]

"CLSID"="{25336920-03F9-11cf-8FD0-00AA00686F13}"

"Encoding"=hex:08,00,00,00

[HKEY_CLASSES_ROOT\MIME\Database\Content Type\text/json]

"CLSID"="{25336920-03F9-11cf-8FD0-00AA00686F13}"

"Encoding"=hex:08,00,00,00

然后双击.reg文件。重新启动IE。当触发返回Content-Type为application/json或text/json的URL时,您将获得以下新行为:

这是它的作用和原因:

25336920-03F9-11cf-8FD0-00AA00686F13是“浏览中浏览”的CLSID。基本上,此注册表条目告诉IE对于具有application/json MIME类型的文档,只需在原地查看它即可。这不会影响通过