存储机制
1. cookies存储机制
什么是cookie
当客户端向服务端发送请求后,服务端对客户端发送过来的信息进行处理时,就会产生cookie,这是里面服务端就会有两段信息,一部分是客户端传过来的信息,还有一段是服务器处理过的信息,cookie会将其中的一段保存起来。然后通过包头返回客户端保存在客户端PC机器上。这就是cookie的生成。
优点:兼容性好
缺点:一是增加了网络流量,因为它随任意http一同发送;二则是它的数据容量有限,最多只能存储4KB的数据,浏览器之间各有不同;三是不安全。
2. LocalStorage存储机制
将数据保存在客户端本地的硬件设备上,即使关闭了浏览器数据也不会丢失,可以说是一种永久性的保存。
保存数据
localStorage.setItem("key","value")
//或
localStorage.key = value;
读取数据
变量 = localStorage.getItem("key")
//或
变量 = localStorage.key
3. SessionStorage存储机制
这种存储机制仅仅是保存当前会话页面的数据内容,当用户关闭了浏览器时,保存的数据也会跟着消失,即是一种暂时性的存储。
保存数据
sessionStorage.setItem("key","value")
//或
sessionStorage.key = value;
读取数据
变量 =sessionStorage.getItem("key")
//或
变量 = sessionStorage.key
seccionStorage和localStorage都属于web存储机制,但是IE不支持 SessionStorage,低版本IE ( IE6, IE7 ) 不支持 LocalStorage,并且不支持查询语言
本地数据库
在HTML5时代,数据不仅仅能存储在服务器端,还能存储在客户端,着大大减轻的服务器的负担,也使得客户端也能像访问本地文件一样对内置的数据库进行直接的访问。
SQLLite
使用openDatabase方法创建一个访问数据库的对象,
var db = openDatabase('db','1.0','Text DB',2*1024*1024);
//这四个参数分别是数据库名;版本号;数据库描述;数据库大小
在实际访问数据库时候,还需要调用transaction方法,用来执行事务处理
indexedDB
IndexedDB是为了能够在客户端存储大量的结构化数据,并且使用索引高效检索的API
本地缓存
本地缓存与浏览器缓存的区别
1、本地缓存服务于整个web应用
程序,二浏览器缓存只是服务于单个网页
2、任何网页都有网页缓存,而浏览器缓存只缓存那些指定的页面
3、浏览器缓存不安全、不可靠,因为不清楚缓存了那些内容,而本地缓存是可靠的,因为可以指定缓存的页面和内容,使得开发人员可以控制。