和大家一起先来了解一下H5之前的存储方式:

cookies的诞生:

  • http请求头上带着数据
  • 大小只能为4K
  • 主Domain的污染

下面是百度的一些Cookies

  HTTP中带√的表示,只能被服务器端修改的数据,一般用来存储身份验证等信息

cookies造成了一系列问题,安全问题,数据带在请求头里面,会被获取,如果一系列访问会导致cookies越来越臃肿。

基于这些问题,逐渐出现了新生代的产物,H5。

  那H5解决了哪些问题呢

  • 解决了4K的大小问题,
  • 解决请求头常带存储信息的问题
  • 解决了关系型存储的问题
  • 跨浏览器

H5的几种存储方式

  • 本地存储(localstorage && sessionstorage)
  • 离线缓存(application cache)
  • IndexedDB 和 Web SQL

1、API(API全称application program interface,应用编程接口。浏览器将一个具有相对完整功能的程序被封装起来供用户直接使用)

---  localstorage  && sessionstorage

2、存储形式为

---key --> value形式

3、过期

--localstorage 永久存储,永不失效,除非手动删除

--sessionstorage 重新打开的title里或者关闭浏览器就会消失

4、大小

---官方给我文档为每个域名5M

H5可以存储哪些东西呢:  数组、json数据、图片、脚本、样式文件

localstorage API介绍

--  getItem

--  setItem

--  removeItem

--   key

--  clear

我们为了方便直接在控制台使用这些东西; 用法都是一样的,可以在其他地方也这样使用。

还有IndexedDB 未说到,但是它是用来代替已经废弃的Web SQL Database出现的。

暂时未用到过,有发现的地方再补充

---------------------------------------------------------分割线---------------------------------------------------

希望今天的分享能对大家有所启发。大家有不同的意见或建议可以在下面的留言区跟我交流。

          觉得好可以关注,后续还有继续推文噢~ 

HTML存储详解的更多相关文章

  1. Hbase存储详解

    转自:http://my.oschina.net/mkh/blog/349866 Hbase存储详解 started by chad walters and jim 2006.11 G release ...

  2. html5的web存储详解

    以前我们在本地存储数据都是用document.cookie来存储的,但是由于其的存储大小只有4K左右,解析也很复杂,给开发带来了诸多的不便.不过现在html5出了web的存储,弥补了cookie的不足 ...

  3. HTML5本地存储详解

    HTML5storage提供了一种方式让网站能够把信息存储到你本地的计算机上,并再以后需要的时候进行获取.这个概念和cookie相似,区别是它是为了更大容量存储设计的.Cookie的大小是受限的,并且 ...

  4. android相机调用及存储详解

    package com.firefly.six; import java.io.File; import java.io.FileInputStream; import java.io.FileNot ...

  5. HTML5本地化应用开发-HTML5 Web存储详解

    文章不是简单的的Ctrl C与V,而是一个字一个标点符号慢慢写出来的.我认为这才是是对读者的负责,本教程由技术爱好者成笑笑(博客:http://www.chengxiaoxiao.com/)写作完成. ...

  6. innodb和myisam数据库文件存储详解以及mysql表空间

    数据库常用的两种引擎有Innodb和Myisam,关于二者的区别参考:https://www.cnblogs.com/qlqwjy/p/7965460.html 1.关于数据库的存储在两种引擎的存储是 ...

  7. Redis持久化存储详解(一)

    > 为什么要做持久化存储? 持久化存储是将 Redis 存储在内存中的数据存储在硬盘中,实现数据的永久保存.我们都知道 Redis 是一个基于内存的 nosql 数据库,内存存储很容易造成数据的 ...

  8. H5本地存储详解

    H5之前存储数据一般是通过 cookie ,但是 cookie 存的数据容量比较少.H5 中扩充了文件存储能力,可存储多达 5MB 的数据.现在就实际开发经验来对本地存储 ( Storage ) 的使 ...

  9. Android SharedPreferences存储详解

    什么是SharedPreferences存储 一种轻量级的数据保存方式 类似于我们常用的ini文件,用来保存应用程序的一些属性设置.较简单的参数设置. 保存现场:保存用户所作的修改或者自定义参数设定, ...

随机推荐

  1. js面试题——找到数组中的重复元素并判断重复次数且输出重复元素

    var countArr = [1,2,3,4,5,6,3,4,3,3,7,8,9,32,1,11,2,3,3,3]; var res = {}; var maxnum=0; var max; fun ...

  2. day 17python 面对对象之继承

    一:什么面向对象的继承? 比较官方的说法就是: 继承(英语:inheritance)是面向对象软件技术当中的一个概念.如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A ...

  3. CentOS7搭建FastDFS V5.11分布式文件系统-第二篇

    1.CentOS7 FastDFS搭建 前面已下载好了要用到的工具集,下面就可以开始安装了: 如果安装过程中出现问题,可以下载我提供的,当前测试可以通过的工具包: 点这里点这里 1.1 安装libfa ...

  4. script全局变量

    javascript全局变量的生命周期是:直到页面关闭才失效.否则一直有用. 方式1 1 2 var test; var test = 5; 需注意的是该句不能包含在function内,否则是局部变量 ...

  5. 获取设备信息——获取客户端ip地址和mac地址

    1.获取本地IP(有可能是 内网IP,192.168.xxx.xxx) /** * 获取本地IP * * @return */ public static String getLocalIpAddre ...

  6. Netty核心概念(8)之Netty线程模型

    1.前言 第7节初步学习了一下Java原本的线程池是如何工作的,以及Future的为什么能够达到其效果,这些知识对于理解本章有很大的帮助,不了解的可以先看上一节. Netty为什么会高效?回答就是良好 ...

  7. 编译Qt-mingw使用的opencv

    set path=D:\dev\IDE\Qt5.7.0\Tools\mingw530_32\bin;%path% cd build_mingw530_32 cmake -G "MinGW M ...

  8. [转] 使用 MVC 5 的 EF6 Code First 入门 系列

    译文:http://www.cnblogs.com/Bce-/category/573301.html 原文:http://www.asp.net/mvc/overview/getting-start ...

  9. Struts动态表单(DynamicForm)

    动态表单的含义是不要手动定义,直接在配置文件中进行定义. 1.手动进行定义 <form-beans > <form-bean name="userForm" ty ...

  10. Golang gRPC 和 gRPC-gateway 结合使用

    一.安装 go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway go get -u github.com/g ...