[from disk cache] Axios 请求取得脏数据

学习心得 做棵大树 4年前 (2020-04-07) 2089次浏览 0个评论

BG: 最近在开发一个项目的过程中,发现本机切换账户后,发送相同请求,竟然请求到了相同的数据,而后发现了这个小细节。

起初,我以为脏数据是由于后台缓存机制的问题,而后经过调试和搜寻发现,并非是后台缓存的问题。而是前台数据请求的问题,经过查看两次发送的请求,发现首次发送成功,而第二次,则在 RequestHeader 中出现了 from disk cache 的信息,请求并未发送成功。

那么什么是 from disk cache 呢?

from disk cache 是指已经在之前的某个时间加载过该资源,所以并不会请求服务器,且此资源不会随着该页面的关闭而释放掉,因为是存在硬盘当中的,下次打开仍会出现from disk cache

也就是说,前台自动查询了你以往的查询记录,而后从本地相同查询中取出了数据,并未发送至服务器重新获取;于是就出现了脏数据的情况。

顺带,我也查了另一个相类似的错误:from memory cache

该提示,也是指:这个资源是直接从内存中拿到的,不会请求服务器一般已经加载过该资源且缓存在了内存当中,当关闭该页面时,此资源就被内存释放掉了,再次重新打开相同页面时不会出现 from memory cache 的情况。

对于这种情况的解决也十分简单,禁用缓存即可:

headers: {‘Cache-Control’: ‘no-cache’}

Axios 中: axios.defaults.headers['Cache-Control'] = 'no-cache'


做棵大树 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明[from disk cache] Axios 请求取得脏数据
喜欢 (4)
[欢迎投币]
分享 (0)
关于作者:
一个整天无所事事的,有时候忽然热血的孩子
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址