RIVALSA网络日志

Rivalsa周记(第24周)

于2021-12-25发布

网课学习又开始啦

2019年,我报名了关于前端的网络课程,大约学习了几个月后,就暂停了网课学习。然后直到现在才重新开启了网课学习,这次学习的主要内容是 vue 框架。

其实,在我看来,这种视频直播的方式讲课的知识密度有点太低了,一次是2个小时,基本有超过1小时的废话。如果有一定基础,想快速学习 vue 的话,最有效的方法还是看官方文档加多多练习。

研究 Linux 的计划又延后了

我的 web 服务器一直在使用 Windows 的 IIS 服务,但最近感觉 IIS 的生态不是很理想,比如迟迟都没有支持 TLS1.3 等。正因如此,我准备换成主流的 Linux 系统,于是就需要一段时间去学习相关知识。但由于最近的网课又开课了,所以估计研究 Linux 的计划又要延后了。

奇怪的后退与缓存

最近我使用 Google Chrome 时发现了一个特别的现象,由于我的知识储备有限,暂时无法解释为什么会这样,如果有知道的小伙伴,请评论区留言告知,十分感谢。

奇怪的点就在于当点击浏览器的后退按钮后有的会重新发起请求,有的没有任何请求直接显示之前的页面。而且有请求时,即使之前的响应中有 cache-control:max-age=0 头部,仍然会使用浏览器的缓存。

我的具体操作步骤如下:

  1. 打开 Google Chrome 的 DevTools 工具,打开网络选项卡,不选择“保留日志”与“停用缓存”选项;
  2. 访问网站 https://main.rivalsa.net;
  3. 点击页面上的链接转跳到下一个页面;
  4. 点击浏览器的后退按钮;
  5. 页面后退后 DevTools 工具页面内是一片空白,没有任何请求信息。

我重置浏览器及 DevTools 工具后仍然有以上现象,但我访问其他网站(如淘宝)时,并没有发生以上现象,而且我更换一台电脑再测试时也没有发生以上现象。

而且即使有请求的时候,有的也总是会默认使用缓存。比如,当访问页面A的时候调用了一个资源B,资源B中有一个 Header 为 access-control-allow-origin:www.example.com,此时点击页面A中的某个链接转跳到页面C,页面C中也调用了资源B,但返回的 Header 为 access-control-allow-origin:abc.example.com,此时点击浏览器的后退按钮,浏览器又回到了页面A,但是此时调用的资源B返回的 Header 却是 access-control-allow-origin:abc.example.com。即使上面提到的所有页面都返回了 cache-control:max-age=0 头部也有上述现象,但选中 DevTools 网络选项卡中的“停用缓存”选项后此现象消失。

有能解释此现象的小伙伴请评论告知,感谢。

(正文完)

版权信息

本作品著作权归属 Rivalsa 所有,除非 Rivalsa 明确许可您使用,否则任何个人或组织不得以任何方式直接或间接的复制、伪造、转载、摘编、翻印、改编、演出或以其他方式使用本作品。

已获得3个赞0个差评

0条评论

发表评论(取消回复)