Cookie,localStorage,sessionStorage 桃扇骨 2022-05-29 01:38 199阅读 0赞 # webstorage # **webstorage**是本地存储,存储在客户端,包括**localStorage**和**seesionStorage**. ## **1.localStorage** ## > 生命周期是永久的,意味着除非用户显示在浏览器提供的UI上清楚信息,否则一直存在。仅在浏览器中保存,不参与和服务器的通信。 ## 2.sessionStorage ## > 仅在当前会话下有效,关闭页面或浏览器后被清除。仅在浏览器中保存,不参与和服务器的通信。源生接口可以接受。 使用时使用相同的API:’ localStorage.setItem("key","value");//以“key”为名称存储一个值“value” localStorage.getItem("key");//获取名称为“key”的值 localStorage.removeItem("key");//删除名称为“key”的信息。 localStorage.clear();//清空localStorage中所有信息 但它们的作用域不同: > 1.不同浏览器无法共享localStorage或sessionStroage中的信息。 > 2.相同浏览器的不同页面可以共享相同的localStorage.。 > 3.如果一个标签页包含多个iframe标签且他们属于同源页面,他们之间可以共享sessionStorage。 # Cookie # > 生命期只在设置的cookie过期时间之内有效,即使窗口或浏览器关闭。存放数据很小。 > 可以与服务端通信,每次都会携带再HTTP头中。源生Cookie接口不友好。 **优点:**具有极高的扩展性和可用性 > 1.控制保存在cookie中的session对象的大小。 > 2. 通过加密和安全传输技术,减少cookie被破解的可能性。 > 3.控制cookie的生命周期,即使被盗,随时可能失效。 缺点: > 1.cookie的长度和数量有限制,最多存放20条,每条长度不超过4kb。 > 2.如果cookie被截掉,就会被盗取所有的session信息。 > 3.有些状态不可能保存在客户端。 ## 三者共同特点: ## **都是保存在浏览器端,且同源的。** ![一张图解释一切][Image 1] [借鉴原文][Link 1] [Image 1]: [Link 1]: https://segmentfault.com/a/1190000012057010#articleHeader0
还没有评论,来说两句吧...