AppCache 在 Firefox(30)中运行良好,但在 IE(11)中无法正常工作。

4

我正在尝试提供我的asp.net网站的离线版本。因此,如果我调用我的默认页面,它应该加载offline.html。在Firefox中可以正常工作,在IE(11和我测试的模拟10)中不能。

Manifest.appcache

CACHE MANIFEST
 # version 1

CACHE:
offline.html

NETWORK:

FALLBACK:
Default offline.html

Web.config

<staticContent>
  <remove fileExtension=".appcache" />
  <mimeMap fileExtension=".appcache" mimeType="text/cache-manifest" />
</staticContent>

默认值

<html manifest="Manifest.appcache">

在IE中有一个“应用程序缓存致命错误”的问题。

有没有关于IE的想法或替代方案?

1个回答

0

有很多事情可能会导致应用程序缓存出现问题;它很难设置,而且调试起来很麻烦,因为浏览器没有提供有用的信息来解释为什么出错了。

它有很多陷阱,包括几个恶劣的跨浏览器怪癖(影响所有主要浏览器;测试非常重要)。

导致在其他浏览器中正常工作但在IE中失败的主要跨浏览器怪癖是如果您忘记设置清单文件的MIME类型。

请按以下方式设置MIME类型:

text/cache-manifest

IE在这方面可能会挑剔,而其他浏览器则不会。这是因为规范最近有所改变;以前MIME类型被列为强制性要求;但现在规范已经取消了这个要求,因为大多数浏览器没有强制执行它,但IE确实强制执行。

因此,请设置MIME类型,希望这样可以解决问题。


我应该在哪里设置MIME类型?在Web.config中不够吗? - tvelop

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接