问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

html5的离线web应用的浏览器和服务器交互的过程要是没有缓存怎么办

发布网友 发布时间:2022-04-23 05:19

我来回答

3个回答

热心网友 时间:2022-04-07 12:25

html5的离线web应用的浏览器和服务器交互的过程要是没有缓存就需要每次交互都要实时接口调用,增加网络开销。
一、离线存储的作用
1、用户可离线访问应用,这对于无法随时保持联网状态的移动终端用户来说尤其重要
2、用户访问本地的缓存文件,通常意味着更快的访问速度
3、仅仅加载被修改过的资源,避免同一资源对服务器多次的请求,大大降低了对服务器的访问压力
二、实现离线存储
1、在html标签里通过manifest属性引用一个cache.manifest文件,该文件里声明了浏览器需缓存的所有资源文件,如下所示:
<!DOCTYPE html>
<html lang='cn' manifest='cache.manifest'>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>离线缓存示例页面</title>
<!-- CSS文件引用 -->
</head>

<body>
<!-- 各种标签 -->
</body>

<!-- 各种脚本文件 -->
</html>
2、关于cache.manifest的定义
CACHE MANIFEST
# 注释:需要缓存的文件,无论在线与否,均从缓存里读取
chched.js
cached.css

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

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

热心网友 时间:2022-04-07 13:43

一.离线存储
有一个web应用有三个文件index.html,a.js,b.css,现在需要把js和css文件缓存起来
1.在index.html里加上<html manifest="test.manifest">
2.manifest清单格式如下

CACHE MANIFEST
#上面一句必须
#v1.0.0
#需要缓存的文件
CACHE:
a.js
b.css
#不需要缓存的文件
NETWORK:
*
#无法访问页面
FALLBACK:
404.html

3.manifest文件的mime-type必须是 text/cache-manifest类型
注意点:
  1.对于每个index.html?id=1或index.html?id=2都会分别缓存index.html页面,可以通过chrome浏览器Resources/Application Cache观察
  2.如果想更新缓存内容,只要修改下manifest文件即可,如改版本号v1.0.1
 4.离线存储如果资源有更新,可以通过如下代码来监听,但第一次加载还会是原来的版本

window.applicationCache.addEventListener('updateready',function(e){
if(window.applicationCache.status == window.applicationCache.UPDATEREADY){
window.applicationCache.swapCache();

if(confirm("loding new?")){
window.location.reload()
}
}
},false)

二.本地缓存

localStorage.setItem("key","value")

localStorage.getItem("key","value")

localStorage.removeItem("key")

localStorage.clear()

1.本地存储永不过期,除非自己去清除
2.可以通过chrome浏览器Resources/Local Storage来查看
3.不同域下就算key相同取不到的值也不同,如localhost和127.0.0.1

热心网友 时间:2022-04-07 15:18

可以用传统的隐藏字段实现。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
豆瓣酱放多了怎么补救 鑫创sssbd量产工具 为了了解某校1500名学生的体质状况,随机调查了这个学校内一定数量学生... 564÷85的竖式如何列? 上海房屋过户 要准备什么资料 个人卖房要提供哪些资料 房屋交易资料需要哪些 房子买卖要哪些资料 房产交易需要什么资料 ...让重锤自由下落,打出的一条纸带如图所示,图中 鸡骨草煲鸡汤的功效窍门 HTML5存储类型有什么区别? 喝鸡骨草煲水有什么功效 iOS的webView如何实现html的离线缓存 鸡骨草有什么功效? 什么是html5的是离线存储 怎么学习html5里面的离线缓存 html5离线存储缓存列表可以动态生成吗 大蕉花可和鸡骨草一起煲吗? HTML5的离线缓存是不是就是断网了也可以跟没断网一样用 html5 如何更新离线缓存 灵芝鸡骨草瘦肉汤有什么功效?? HTML5的离线储存怎么使用,以及工作原理 鸡骨草灵芝蜜枣煲鸡汤有什么作用 html5新增了离线缓存机制这说法对吗 鸡骨草煲鸡汤的功效 鸡骨草灵芝老母鸡汤 鸡骨草灵芝汤功效有哪些 鸡骨草煲灵芝汤有什么功效 携程买的机票怎么共享订单给别人? HTML5的离线储存怎么使用? HTML5离线存储有优势吗? html5本地存储和离线应用有什么区别? 鸡骨草作用 HTML5离线存储最大能存储多大资源 喝了有蟑螂的水怎么办?会不会在肚子里繁殖 鸡骨草有什么作用? 不小心喝了有蟑螂的水会不会怎么样 请教高手,html页面中的图片,如何让浏览器缓存至本地? 鸡骨草煲汤有什么用? 水里有蟑螂我喝了有事吗 如何能html改图片时直接使用本地缓存,完全不走流量(html 或 javascript... 请问我刚倒的开水放在那里,蟑螂掉到水里了,于是我就喝了几口,请问蟑螂掉进水里,那水还能喝吗?我好害 喝了有蟑螂的水有事吗 刚喝完水 发现水壶里有只死蟑螂 恶心啊 怎么办呀? 喝了一半隔好几天的矿泉水,发现里有蟑螂!怎么办? 喝的水中有蟑螂对人体有害吗? 喝完水发现里面有蟑螂 “石”的多音字是什么? 饮水机有蟑螂水能喝吗