离线应用缓存

Posted baimeishaoxia

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了离线应用缓存相关的知识,希望对你有一定的参考价值。

从网上搜到的例子都是基于html的,其实jsp页面也可以做缓存,包括jsp中的同步数据也可以缓存,本人已经测试过。
首先,服务端的配置,本例用tomcat,在web.xml中配置以下项

<!-- 配置manifest -->
    <mime-mapping> 
        <extension>manifest</extension>
        <mime-type>text/cache-manifest</mime-type> 
    </mime-mapping> 

接着,配置test.manifest文件。

CACHE MANIFEST

# VERSION 4.5

# 直接缓存的文件
CACHE:
index.html
db.html
data.html
js/cache.js
js/jquery.js
js/db-use.js
js/data.json
images/a.jpg
images/b.jpg
images/c.jpg
images/d.jpg
images/e.jpg
images/f.jpg

如果缓存的文件有变化,则改变版本号即可,上面的version。
这里面只能配置缓存静态文件。但是,如果你的是jsp等的动态页面,则需要在jsp文件中加上下面这句话:

<html manifest="test.manifest" type="text/cache-manifest">

这样jsp页面中的同步动态数据也可以缓存下来。分页也测试过,不过写的demo很简单。
当然,如果你只是缓存html页面,也可以加上这句话,也可以缓存,这样在manifest文件中就不必配置页面了。

以上是关于离线应用缓存的主要内容,如果未能解决你的问题,请参考以下文章

记离线缓存(manifest)一大坑,断定其只适用于静态网站或离线应用

记离线缓存(manifest)一大坑,断定其只适用于静态网站或离线应用

仅在离线时使用 ServiceWorker 缓存

在缓存重定向中找不到缓存键

H5 应用程序缓存(离线缓存)

HTML5的应用缓存