一、微信H5缓存概述
微信H5缓存是指在微信公众号中,通过使用HTML5的AppCache(Application Cache)特性实现在离线状态下浏览器仍能够访问web应用程序和页面。该缓存可以有效地帮助提高用户访问速度及用户体验,并且可以减轻web服务器的负担,降低服务器的带宽和流量消耗。在微信H5缓存中,主要包含两部分内容:清单文件(manifest)和资源文件(assets)。
二、微信H5缓存清单文件(manifest)的使用
在微信H5应用中使用 MANIFEST 的方法如下:
CACHE MANIFEST # 2017-08-21 v1.0.0 /assets/css/style.css /assets/js/main.js /assets/img/logo.png NETWORK: *
以上代码中,CACHE MANIFEST 是 MANIFEST 文件的头部,表示此文件是一个 MANIFEST 文件;#后面的内容是该文件的版本信息;而第2行以下的内容表示要被缓存的文件。需要注意的是,清单文件中的路径需要相对于 manifest 文件的路径来指定。NETWORK: * 表示所有其他内容,不包括被 CACHE MANIFEST 标记的文件,都将需要进行网络请求。
当浏览器访问缓存内容时,则会先检查 CACHE MANIFEST,如果清单未变化,则快速返回缓存内容。否则,浏览器将下载 MANIFEST 唯一文件,并且检查 MANIFEST 中的每个文件是否有变化来更新浏览器中的缓存。即当cache.manifest 有更新时,用户下次访问页面时,浏览器会自行升级版本。
三、微信H5资源文件(assets)的使用
在清单文件中指示要缓存的文件后,还需要将所需资源放置在相应目录下,以便浏览器在离线状态下仍然可以访问到这些资源。
H5 缓存示例页面 <link rel="stylesheet" href="/assets/css/style.css">欢迎来到 H5 缓存示例页面
<script src="/assets/js/main.js"></script>