浏览器的存储与缓存

浏览器的存储方式

我之前有发过seeion,cookie,localStorage,sessionStorage的文章,js中session,cookie,sessionStorage以及localStorage的用法还有区别_刘依铭的博客-CSDN博客接下来主要是想说一个小问题。

问:第一次登录某个网站选择保存账号密码,第二次登录的时候服务端如何判断用户信息?或者简单说就是服务端怎么知道我是谁的?通过什么方式?

第一次登录的时候通过账号密码会在服务端生成一个seeionID,通过setCookie的方式存在Cookie上,第二次发送相同请求的时候,cookie会保存seeionID,服务端通过解析SeeionID找到当前用户是谁,如果有的话就是直接使用seeionID,如果没有的话就是通过跳转到302到登录页面

浏览器的缓存机制

问:第一次请求页面会显示200.第二次如果命中了缓存机制的话会直接使用缓存中的数据,会减少一个请求时间,请问这个缓存机制有没有一个大概的了解?

首先我们要知道浏览器缓存的目的是为了减少请求的体积以及数量,从家加快加载页面的速度。

强制缓存(cache-control):当浏览器像服务器第一次发送请求的时候,如果服务器觉得是值得被缓存下来的,类似于css文件,就设置cache-control值为一个max-age,其实有点类似于过期时间,当之后浏览器再次访问相同网站时候,服务器的时候,如果还没有到max-age这个时间就可以直接在本地缓存拿到数据,从而速度就会变快。

协商缓存(对比缓存):服务端缓存策略

主要过程是这样的:第一次发送请求的时候,服务端会给浏览器一个200状态码以及资源标识(上次修改时间或者是唯一字符串),并且把资源以及标识存入本地缓存中。当后续再有请求的时候,浏览器会一起发送请求和资源标识,这个时候服务器会和本地缓存做一个对比,如果是相同版本,即本地缓存里面已经是最新资源,那服务器返回一个304状态码,直接从缓存里拿资源;如果不是最新资源,服务器返回200状态码,最新资源以及资源标识。

对比缓存的速度肯定比强制缓存要慢,因为需要服务器和本地缓存进行对比

浏览器缓存的总结

主要过程如下:

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值