【问题标题】:WebResource.axd not working with Internet Explorer 11WebResource.axd 不适用于 Internet Explorer 11
【发布时间】:2013-07-25 13:07:50
【问题描述】:

我们正在针对新的 Windows 8.1 IE 11 经典浏览器和 Metro 浏览器测试我们的网站。
WebResource.axd 中嵌入了一个Javascript 文件。 使用 Firefox、Google Chrome 和 IE 11 生成并加载 WebResource,并在兼容性视图中添加了该站点。
唯一的问题是没有加载 WebResource 的经典和 Metro IE 11。
我不是在寻求准确的答案,但让我感到困惑的是,
我在生成的 HTML 中看不到 WebResource <script> 标记。我也看不到对资源的​​任何隐含请求。
现在我的问题是问题可能出在哪里,我调试了我的代码,但在任何自定义处理程序或模块中都找不到它失败。
它是在 IIS 处理程序(AssemblyResourceLoader-Integrated)还是在生成逻辑中失败你注册了WebResource

【问题讨论】:

  • 可能与problems with IE10 相关。尝试在Page_Init 事件中设置Page.ClientTarget = "uplevel"
  • 哦好吧..我会试着让你知道..现在仪式我无法访问远程机器。
  • 哦好的..谢谢...我不明白微软如何移植一个新的操作系统并且不包含这个修复...

标签: .net internet-explorer iis webresource.axd windows-8.1


【解决方案1】:

Richard 的上述解决方法:

Page_Init 事件中设置Page.ClientTarget = "uplevel"

是正确的;您需要禁用用户代理嗅探以让 ASPNET 向 IE11 发送正确的脚本块。 http://msdn.microsoft.com/en-us/library/system.web.ui.page.clienttarget.aspx

不幸的是,他们用来启用 IE10 的补丁无法在 IE11 上正常工作(因为 IE 团队显着更改了 IE 用户代理字符串,默认删除了 MSIE 令牌)。因此,2013 年 6 月发布了另一个 ASP.NET 补丁。请参阅 https://stackoverflow.com/a/18651133/126229

【讨论】:

  • 谢谢理查德...我仍然需要尝试...肯定会向您确认结果...另外我认为您对用户代理字符串是正确的。我发现一些 CSS 工作必须再次为渐变等完成。
  • @All ,我下载了适用于 Win 7 的 IE 11 并指向我机器上的代码,这意味着我的机器成为客户端和服务器,一切正常。仅供参考,我没有在 PageLevel 明确安装任何修补程序或更改任何内容。事实上,我无法安装修补程序,因为我有 VS 2012。我认为 Win 7 的 IE 11 与此有关。但是,如果我将服务器指向原始 QA 机器,问题仍然存在。因此,此修补程序要么随 .NET 4.5 一起提供,要么随我安装的更新之一提供。
  • 当您访问 Intranet/本地计算机上的页面时,默认情况下,该页面在 IE 的“兼容性视图”模式下加载,该模式使用 IE7 用户代理字符串(从而避免了 ASP.NET 问题)。您可以通过按 F12 并查看“浏览器模式”指示器来看到这一点。
  • IE 11 开发者工具没有移植浏览器指示器模式。我将尝试使用 Win 8.1 将其他客户端指向我的机器作为服务器。
  • 我使用了不同的客户端并将服务器定向到我的机器上,一切仍然正常。问题仍然是它在我的机器上是如何工作的,与 .NET 4.5 有什么关系或其他一些已安装的更新。
【解决方案2】:


我们终于能够通过安装 Richard 提到的修补程序 http://support.microsoft.com/kb/2600088(32 位或 64 位)来解决问题,然后运行 ​​aspnet_regbrowsers -i
感谢大家的解决方案。不想接受答案的要求,但也许人们可能在 cmets 中找不到它。

【讨论】:

猜你喜欢
  • 2013-12-19
  • 1970-01-01
  • 1970-01-01
  • 2019-10-18
  • 1970-01-01
  • 2015-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多