浏览器缓存

206 阅读1分钟

常用的浏览器缓存技术

  1. cookie 浏览器端document.coookie = 'username=XXX;domain=XXX.xx.com' cookie 包含expires,path,domain,secure
  • expires: dookie的时长,http1.0中,http1.1中变成max-age
  • path: cookie的路径,cookie有跨域问题,为了保证,整个项目里面都可以使用cookie,path一般设置为/,如果不设置,默认是设置cookie的文件的路径
  • domain: 设置域名,指定了cookie发送到服务器的方向,例如document.coookie = 'username=XXX;path=/;domain=ss.com'设置之后 11.ss.com,22.ss.com就都可以接收到cookie,注意要配和 path=/
  • secure: 在与服务器远程通信时加密,保证cookie安全性,在https或其他安全协议中才能生效。
  • httpOnly: 默认是没有httponly的,设置了httpOnly之后,就不能通过js操作cookie cookie的的安全性差,一般用于保存私密性不强的数据

BIDUPSID=F954511371B25E6E51EBCBBDE625E896; PSTM=1603269159; BAIDUID=F954511371B25E6E2D3B6CF3110072AE:FG=1; BD_UPN=123253; document.cookie获取的数据分号+空格的形式

  1. localStorage 本地永久存储,一般为5M,存储量变大,页面卡顿明显
  2. sessionStorege 本地临时存储,页面会话在浏览器打开期间一直保持, 并且重新加载或恢复页面仍会保持原来的页面会话。在新标签或窗口打开一个页面时会在顶级浏览上下文中初始化一个新的会话,页面关闭,缓存消失
  3. indexDB 可以存储大量的数据,类似数据库一样的操作