HTML5   发布时间:2022-04-25  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了HTML5离线存储——manifest简介大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

离线存储的作用

1、用户可离线访问应用,这对于无法随时保持联网状态的移动终端用户来说尤其重要

2、用户访问本地的缓存文件,通常意味着更快的访问速度

3、仅仅加载被修改过的资源,避免同一资源对服务器多次的请求,大大降低了对服务器的访问压力

@H_44_2@manifest是什么 @H_954_4@manifest文件是简单的文本文件,它告知浏览器被缓存的内容(以及不缓存的内容),@L_737_10@manifest的浏览器,会将按照manifest文件的规则,将文件保存在本地,从而在没有网络链接的情况下,也能访问页面

浏览器支持情况

HTML5离线存储——manifest简介

从图中可以看出主流浏览器均支持应用程序缓存, 除了IE

如何用

如需启用应用程序缓存,在文档的 <html> 标签中包含 manifest 属性

<!DOCTYPE HTML>
<html @H_724_35@manifest="demo.appcache">

<body>
The content of the document......
</body>

</html>

请注意,manifest 文件需要配置正确的 MIME-type,即 "text/cache-manifest"。必须在 web 服务器上进行配置

@H_502_54@ @H_44_2@manifest文件 @H_954_4@manifest的典型结构:

CACHE MANIFEST
@H_197_61@# 注释:需要缓存的文件,无论在线与否,均从缓存里读取
CACHE:
chched.js
cached.css

@H_197_61@# 注释:不缓存的文件,无论缓存中存在与否,均从新获取
NETWORK:
uncached.js
uncached.css

@H_197_61@# 注释:获取不到资源时的备选路径,如index.html访问失败,则返回404页面
falLBACK:
index.html 404.html

1、 CACHE MANIFEST 写在manifest文件开头

2、#号开头的是注释,一般会在第二行写个版本号,用来在缓存的文件更新时,更改manifest的作用,可以是版本号,时间戳或者md5码等等。

3、CACHE是必须的,作用是标识出哪些文件需要缓存,可以是相对路径也可以是绝对路径

4、NETWORK可选,这一部分是要直接读取的文件,可以使用通配符 * 。

5、falLBACK可选,指定了一个后备页面,当资源无法访问时,浏览器会使用该页面

更新缓存

HTML5离线存储——manifest简介

  • 在线的情况下,浏览器发现html头部有manifest属性,会请求manifest文件,如果是第一次访问应用,浏览器就会根据manifest文件内容下载相应的资源并且进行离线存储。如果已经访问过应用并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后浏览器会对比新的manifest文件与旧的manifest文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资源并进行离线存储。
  • 离线的情况下,浏览器就直接使用离线存储的资源。

注意事项

1、如果服务器对离线的资源进行了更新,那么必须更新manifest文件之后这些资源才能被浏览器重新下载,如果只是更新了资源而没有更新manifest文件的话,浏览器并不会重新下载资源,也就是说还是使用原来离线存储的资源。

2、对于manifest文件进行缓存的时候需要十分小心,因为可能出现一种情况就是你对manifest文件进行了更新,但是http的缓存规则告诉浏览器本地缓存的manifest文件还没过期,这个情况下浏览器还是使用原来的manifest文件,所以对于manifest文件最好不要设置缓存。

3、浏览器在下载manifest文件中的资源的时候,它会一次性下载所有资源,如果某个资源由于某种原因下载失败,那么这次的所有更新就算是失败的,浏览器还是会使用原来的资源。

大佬总结

以上是大佬教程为你收集整理的HTML5离线存储——manifest简介全部内容,希望文章能够帮你解决HTML5离线存储——manifest简介所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。