Rumah > Soal Jawab > teks badan
在使用iOS的webview的时候发现这样一个问题,加载一个网页进来,webview会负责缓存页面里的css,js和图片这些资源。但是这个缓存不受开发者控制,缓存时间非常短。
我希望能像缓存其他数据一样缓存webview里的资源,可以实现吗?
ringa_lee2017-04-17 11:03:44
这个和Web的处理没区别,都是要用到HTML5的appcache。
<html manifest="appcache.manifest"> ... </html>
这个manifest文件的后缀是什么不重要,但MimeType得是text/cache-manifest,文件内容则类似下面列举需要缓存的资源文件:
CACHE MANIFEST style.css script.js
text/cache-manifest类型的缓存头信息得设置对了(建议不允许缓存),免得其他缓存文件的列表没法及时更新。
EDIT:按照约定,如果manifest文件内容变化了,浏览器就应该重新检查资源文件的更新情况。我建议如果资源文件的内容变化了,就应该用新的文件名,如在资源文件的uri里带上日期或者版本号,如common_120901.min.js,或1.0.1/common.min.js。这样可以少一些麻烦。