将整个文件夹添加到HTML5 App Cache

时间:2010-08-23 17:46:17

标签: html5 offline

是否可以将整个文件夹添加到HTML5缓存清单文件中?我无法单独列出文件夹中的所有文件,因为此文件夹中的文件将动态更改(它是图像文件夹)。

3 个答案:

答案 0 :(得分:5)

如果文件夹是动态更改的,则它不应该在应用程序清单中。如果文件夹发生更改,则仍需要从页面到文件夹中文件的某种链接。清单应该只列出这些项目。

例如:

/images/
   1.jpg
   2.jpg
   3.jpg
   4.jpg

和(简化的)HTML文件:

<html manifest="http://foo.bar/cache-manifest">
<body>
<img src="images/2.jpg" />
<img src="images/4.jpg" />

应该有一个看起来像这样的清单:

CACHE MANIFEST
http://foo.bar/images/2.jpg
http://foo.bar/images/4.jpg

如果您想更新清单文件以包含新项目,您只需添加一个URL参数,该参数会在文件夹(和清单)的内容发生变化时发生变化:

<html manifest="http://foo.bar/cache-manifest?updated=8_23_2010_1_53_pm">

每当清单网址发生变化时,都会重新下载。

答案 1 :(得分:2)

不,目前无法获取缓存文件夹的内容。通配符*仅允许在在线白名单部分中使用。

答案 2 :(得分:0)

包含一个文件夹,你会做类似下面的事情....但在此之前......我会考虑使用内置编号或md5创建一个动态的方法来查看文件本身是否有改变。

CACHE MANIFEST
CACHE:
/Content/bootstrap/bootstrap.min.css
/Content/jQuery/jquery-1.8.3.min.js
/Content/bootstrap/bootstrap.min.js
/Content/js

在我看来,最后一行是从该文件夹中提供的页面上使用的任何文件;这些文件出现在应用程序缓存中。