【问题标题】:Why doesn't IE parse the XML returned from a WCF Data Service?为什么 IE 不解析从 WCF 数据服务返回的 XML?
【发布时间】:2012-04-26 20:56:33
【问题描述】:

我目前正在运行 IE8,并且正在使用 WCF 数据服务进行一些测试。当我在浏览器中调用我的收藏集时,我得到了

“您正在查看包含经常更新内容的提要...”

消息并且没有显示任何 XML,因为它必须不理解 Atom 内容元素。但是,我可以轻松地在 Chrome 中进行相同的 RESTful 调用,甚至使用 Fiddler 并查看响应。

是否有某些原因 IE 无法解析从我的 WCF 数据服务返回的 XML,或者我可以更改设置以直接查看它?我显然有变通办法,所以这不是一个关键问题,但如果我必须使用 IE 来查看响应,它会有所帮助。

谢谢!

【问题讨论】:

    标签: internet-explorer wcf-data-services


    【解决方案1】:

    如果要在 IE8 中查看 XML,请单击

    工具 > Internet 选项。

    1. 工具 > Internet 选项。
    2. 选择内容标签
    3. Feed 和网页快讯 下,选择 设置
    4. Advance 部分下取消选中 打开 Feed 阅读视图

    如果您现在查看您的 OData 页面,Feed 查看器将不会显示,但数据将以 XML 格式显示。

    【讨论】:

    • 返回此问题后,这是让 OData 在 IE 中正确显示的最佳“解决方法”。
    • 也为我在 IE10 中工作,但必须先重新启动浏览器
    【解决方案2】:

    IE 8 和 9 只是不支持显示 OData - Atom Pub 提要输出。在IE9中,提供了如下解释:

    Internet Explorer 不支持这种提要格式。

    支持的供稿格式

    • 原子 0.3、1.0
    • RSS 0.91、0.92
    • RSS 1.0
    • RSS 2.0

    但是,仍然有几种简单的方法可以查看 DataService RESTful 调用的输出:

    1. 在 IE 中查看页面的源代码。猜猜那里的输出是什么!
    2. 使用 Fiddler 检查响应。
    3. 使用其他浏览器,如 Chrome,响应将直接在浏览器中输出。

    也许 IE 10 将更好地支持显示和支持基于协议 (OData) 的提要,该协议 (OData) 由创建和拥有 IE 的人创建:Microsoft。

    【讨论】:

      【解决方案3】:

      请务必致电

      response.setCharacterEncoding("text/xml;charset=utf-8");
      

      或等价物。

      【讨论】:

      • 您能否添加一些关于 where 我注入此代码的具体细节?现在我只有一个带有“InitializeService”方法的通用数据服务。
      【解决方案4】:

      您需要禁用提要阅读视图:http://blogs.msdn.com/b/darrenliu/archive/2011/01/26/turn-rss-feed-reading-view-off.aspx

      我遇到了相反的问题,Chrome 不会再为我显示原始 XML(我发誓它曾经如此)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-09
        相关资源
        最近更新 更多