HTML5规范的本地存储.ppt

上传人:枫** 文档编号:567689970 上传时间:2024-07-22 格式:PPT 页数:41 大小:2.04MB
返回 下载 相关 举报
HTML5规范的本地存储.ppt_第1页
第1页 / 共41页
HTML5规范的本地存储.ppt_第2页
第2页 / 共41页
HTML5规范的本地存储.ppt_第3页
第3页 / 共41页
HTML5规范的本地存储.ppt_第4页
第4页 / 共41页
HTML5规范的本地存储.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《HTML5规范的本地存储.ppt》由会员分享,可在线阅读,更多相关《HTML5规范的本地存储.ppt(41页珍藏版)》请在金锄头文库上搜索。

1、HTML5移动移动Web开发开发第第3讲讲 HTML5规范的本地存储规范的本地存储广州大学华软软件学院广州大学华软软件学院HTML5移动移动Web开发开发第第2页页主要内容主要内容1.概述概述2.localStorage3.sessionStorage4.Storage事件监听事件监听5.练习与习题练习与习题HTML5移动移动Web开发开发第第4页页1、概述、概述HTML5移动移动Web开发开发第第5页页1、概述、概述-WebStorageWebStorage是是HTML5中本地存储的解决方案之一中本地存储的解决方案之一。在在HTML5的的WebStorage概念引入之前除去概念引入之前除去I

2、E User Data、Flash Cookie、Google Gears等看名等看名字就不靠谱的解决方案,浏览器兼容的本地存储方字就不靠谱的解决方案,浏览器兼容的本地存储方案只有使用案只有使用cookie。有同学可能会问,既然有了有同学可能会问,既然有了cookie本地存储,为什本地存储,为什么还要引入么还要引入WebStorage的概念?的概念?HTML5移动移动Web开发开发第第6页页Cookie(小饼干)(小饼干)有时也用其复数形式有时也用其复数形式Cookies,指某些网站为了辨别,指某些网站为了辨别用户身份、进行用户身份、进行session跟踪而储存在用户本地终端跟踪而储存在用户本

3、地终端上的数据(通常经过加密)。上的数据(通常经过加密)。Cookie是由服务器端生成,发送给是由服务器端生成,发送给User-Agent(一(一般是浏览器),浏览器会将般是浏览器),浏览器会将Cookie的的key/value保存保存到某个目录下的文本文件内,下次请求同一网站时就到某个目录下的文本文件内,下次请求同一网站时就发送该发送该Cookie给服务器(前提是浏览器设置为启用给服务器(前提是浏览器设置为启用cookie)。)。HTML5移动移动Web开发开发第第7页页主要用途主要用途服务器可以利用服务器可以利用Cookies包含信息的任意性来筛选并经包含信息的任意性来筛选并经常性维护这些

4、信息,以判断在常性维护这些信息,以判断在HTTP传输中的状态。传输中的状态。1、Cookies最典型的应用是判定注册用户是否已经登最典型的应用是判定注册用户是否已经登录网站。录网站。2、“购物车购物车”之类处理。用户可能会在一段时间内在同之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都一家网站的不同页面中选择不同的商品,这些信息都会写入会写入Cookies,以便在最后付款时提取信息。,以便在最后付款时提取信息。HTML5移动移动Web开发开发第第8页页Cookie肿么了肿么了缺陷缺陷: 1. 数据大小:数据大小:作为存储容器,作为存储容器,cookie的大小限

5、制的大小限制在在4KB左右左右,这是非常坑爹的,尤其对于现在复杂的业务这是非常坑爹的,尤其对于现在复杂的业务逻辑需求,逻辑需求,4KB的容量除了存储一些配置字段还简单单值的容量除了存储一些配置字段还简单单值信息,对于绝大部分开发者来说真的不知指望什么了。信息,对于绝大部分开发者来说真的不知指望什么了。2. 安全性问题:安全性问题:由于在由于在HTTP请求中的请求中的cookie是明文传递是明文传递的(的(HTTPS不是),带来的安全性问题还是很大的。不是),带来的安全性问题还是很大的。3. 网络负担:网络负担:我们知道我们知道cookie会被附加在每个会被附加在每个HTTP请求请求中,在中,在

6、HttpRequest 和和HttpResponse的的header中都是中都是要被传输的,所以无形中增加了一些不必要的流量损失。要被传输的,所以无形中增加了一些不必要的流量损失。HTML5移动移动Web开发开发第第9页页WebStorageWebStorage是是HTML新增的本地存储解决方案之新增的本地存储解决方案之一,但并不是为了取代一,但并不是为了取代cookie而制定的标准而制定的标准。cookie作为作为HTTP协议的一部分用来处理客户端和协议的一部分用来处理客户端和服务器通信是不可或缺的,服务器通信是不可或缺的,session正是依赖于实正是依赖于实现的客户端状态保持。现的客户端

7、状态保持。WebStorage的意图在于解决本来不应该的意图在于解决本来不应该cookie做,做,却不得不用却不得不用cookie的本地存储。的本地存储。HTML5移动移动Web开发开发第第10页页WebStorageWebStorage提供两种类型的提供两种类型的API:localStorage和和sessionStorage。区别区别:localStorage在本地永久性存储数据,除非显式将在本地永久性存储数据,除非显式将其删除或清空其删除或清空。sessionStorage存储的数据只在会话期间有效,关存储的数据只在会话期间有效,关闭浏览器则自动删除。两个对象都有共同的闭浏览器则自动删除

8、。两个对象都有共同的API。HTML5移动移动Web开发开发第第11页页浏览器的支持浏览器的支持HTML5移动移动Web开发开发第第12页页检查浏览器是否支持检查浏览器是否支持WebStorage-请打开请打开ex3_1.htmlHTML5移动移动Web开发开发第第13页页代码示例代码示例HTML5移动移动Web开发开发第第14页页主要内容主要内容1.移动设备的支持移动设备的支持2.localStorage3.sessionStorage4.Storage事件监听事件监听5.练习与习题练习与习题HTML5移动移动Web开发开发第第15页页Storage 接口接口interface Storag

9、e Storage 接口接口 readonly attribute unsigned long length; DOMString? key(unsigned long index); getter DOMString getItem(DOMString key); setter creator void setItem(DOMString key, DOMString value); deleter void removeItem(DOMString key); void clear();length:唯一的属性,只读,用来获取唯一的属性,只读,用来获取storage内的键内的键值对数量。值

10、对数量。key:根据:根据index获取获取storage的键名的键名getItem:根据:根据key获取获取storage内的对应内的对应valuesetItem:为:为storage内添加键值对内添加键值对removeItem:根据键名,删除键值对:根据键名,删除键值对clear:清空:清空storage对象对象HTML5移动移动Web开发开发第第16页页localStorage和和sessionStorage操作操作localStorage和和sessionStorage都具有相同的操作都具有相同的操作方法,例如方法,例如setItem、getItem和和removeItem等等loca

11、lStorage和和sessionStorage的方法:的方法:setItem存储存储value用途:将用途:将value存储到存储到key字段字段用法:用法:.setItem( key, value)代码示例:代码示例:sessionStorage.setItem(key, value);localStorage.setItem(site, js8.in);HTML5移动移动Web开发开发第第17页页getItem获取获取value用途:获取指定用途:获取指定key本地存储的值本地存储的值用法:用法:.getItem(key)代码如下代码如下:var value = sessionStora

12、ge.getItem(key); var site = localStorage.getItem(site);HTML5移动移动Web开发开发第第18页页removeItem删除删除key用途:删除指定用途:删除指定key本地存储的值本地存储的值用法:用法:.removeItem(key)代码示例:代码示例:sessionStorage.removeItem(key); localStorage.removeItem(site);HTML5移动移动Web开发开发第第19页页clear清除所有的清除所有的key/value用途:清除所有的用途:清除所有的key/value用法:用法:.clear

13、()代码示例:代码示例:sessionStorage.clear(); localStorage.clear();HTML5移动移动Web开发开发第第20页页web Storage不但可以用自身的不但可以用自身的setItem,getItem等方等方便存取,也可以像普通对象一样用点便存取,也可以像普通对象一样用点(.)操作符,及操作符,及的方式进行数据存储,像如下的代码:的方式进行数据存储,像如下的代码:var storage = window.localStorage; storage.key1 = hello; storagekey2 = world; console.log(storag

14、e.key1); console.log(storagekey2);HTML5移动移动Web开发开发第第21页页2、localStorageHTML5移动移动Web开发开发第第22页页HTML5移动移动Web开发开发第第23页页例:例:填写数据填写数据单击刷新单击刷新HTML5移动移动Web开发开发第第24页页例例HTML5移动移动Web开发开发第第25页页HTML5移动移动Web开发开发第第26页页关闭浏览器,重新打开关闭浏览器,重新打开 ex3_3_local_next.html数据还在。数据还在。HTML5移动移动Web开发开发第第27页页在浏览器中,打开开发者模式(在浏览器中,打开开发

15、者模式(F12)HTML5移动移动Web开发开发第第28页页例例HTML5移动移动Web开发开发第第29页页HTML5移动移动Web开发开发第第30页页3、sessionStorageHTML5移动移动Web开发开发第第31页页3、sessionStorage以以sessionStorage为例进行设置和获取数据。为例进行设置和获取数据。HTML5移动移动Web开发开发第第32页页HTML5移动移动Web开发开发第第33页页例:例:运行方式和上一个例子一样。运行方式和上一个例子一样。填写数据填写数据单击提交单击提交HTML5移动移动Web开发开发第第34页页在浏览器中,打开开发者模式(在浏览器

16、中,打开开发者模式(F12)单击下一页单击下一页HTML5移动移动Web开发开发第第35页页关闭浏览器,重新打开开发者模式关闭浏览器,重新打开开发者模式sessionStorage 临时数据没有了临时数据没有了localStorage本地存储数据还在本地存储数据还在HTML5移动移动Web开发开发第第36页页运行运行 ex3_clear.htmlHTML5移动移动Web开发开发第第37页页小结:小结:为什么比为什么比cookie好好1. 从容量上讲从容量上讲WebStorage一般浏览器提供一般浏览器提供5M的存储空的存储空间,用来存储视频、图片神马的不够,但对于绝大部分间,用来存储视频、图片

17、神马的不够,但对于绝大部分操作足矣操作足矣2.安全性上安全性上WebStorage并不作为并不作为HTTP header发送的发送的浏览器,所以相对安全浏览器,所以相对安全3.从流量上讲,因为从流量上讲,因为WebStorage不传送到服务器,所不传送到服务器,所以不必要的流量可以节省,这样对于高频次访问或者针以不必要的流量可以节省,这样对于高频次访问或者针对手机移动设备的网页还是很不错的。对手机移动设备的网页还是很不错的。HTML5移动移动Web开发开发第第39页页主要内容主要内容1.移动设备的支持移动设备的支持2.localStorage3.sessionStorage4.Storage事件监听(自修)事件监听(自修)5.练习与习题练习与习题HTML5移动移动Web开发开发第第40页页5、练习与习题、练习与习题完成如视频所示功能。完成如视频所示功能。HTML5移动移动Web开发开发第第41页页

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号