文档介绍:1 /10 --------------------------------------------- 感谢观看本文------- 谢谢----------------------------------------------------------- [ 标签: 标题]2016 面试问题及其答案史上最全的前端面试问题及答案总结面试问题及其答案| 2015-07-25 19:52 1. 请你谈谈 Cookie 的弊端 cookie 虽然在持久保存客户端数据提供了方便,分担了服务器存储的负担, 但还是有很多局限性的。第一:每个特定的域名下最多生成 20个 cookie 或更低版本最多 20个 和之后的版本最后可以有 50个 cookie 。 最多 50个 和 Safari 没有做硬性限制 IE和 Opera 会清理近期最少使用的 cookie , Firefox 会随机清理 cookie 。 cookie 的最大大约为 4096 字节,为了兼容性, 一般不能超过 4095 字节。 IE 提供了一种存储可以持久化用户数据,叫做 uerData ,从 就开始支持。每个数据最多 128K , 每个域名下最多 1M 。这个持久化数据放在缓存中, 如果缓存没有清理,那么会一直存在。优点:极高的扩展性和可用性 1. 通过良好的编程,控制保存在 cookie 中的 session 对象的大小。 2. 通过加密和安全传输技术( SSL ),减少 cookie 被破解的可能性。 3. 只在 cookie 中存放不敏感数据,即使被 2 /10 --------------------------------------------- 感谢观看本文------- 谢谢----------------------------------------------------------- [ 标签: 标题]2016 盗也不会有重大损失。 4. 控制 cookie 的生命期,使之不会永远有效。偷盗者很可能拿到一个过期的 cookie 。缺点: 1.`Cookie` 数量和长度的限制。每个 domain 最多只能有20条 cookie ,每个 cooki e长度不能超过 4KB , 否则会被截掉。 2. 安全性问题。如果 cookie 被人拦截了, 那人就可以取得所有的 session 信息。即使加密也与事无补,因为拦截者并不需要知道 cookie 的意义, 他只要原样转发 cookie 就可以达到目的了。 3. 有些状态不可能保存在客户端。例如,为了防止重复提交表单,我们需要在服务器端保存一个计数器。如果我们把这个计数器保存在客户端,那么它起不到任何作用。 2. 浏览器本地存储在较高版本的浏览器中, js 提供了 sessionStorage 和 globalStorage 。在 HTML5 中提供了 localStorage 来取代 globalStorage 。 html5 中的 Web Storage 包括了两种存储方式: sessionStorage 和 localStorage 。 sessionStorage 用于本地存储一个会话( session ) 中的数据,这些数