| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 输入URL按下回车… -> 正文阅读 |
|
[网络协议]输入URL按下回车… |
又一个老生常谈的问题,但的确能引申出很多内容,从这个问题入手能复习或者学到很多知识点,开始分析~(提前说明,默认URL使用HTTPS/HTTP协议) 对于这一个过程应该有一个大概的骨架,然后再是回忆里面的具体细节
一.查找浏览器缓存: 如果是第一次请求肯定在缓存找不到文件啦(先在memory cache也就是内存中找,再在disk cache也就是磁盘中找),那之后的请求为什么能找到呢 看两张图,走一遍流程~ 第一次请求某个URL资源文件 注意这里的Expires是http1.0的属性,已经被http1.1的max-age所替代了,只有没有设置max-age的时候才回去找Expires 再次请求 为了加深理解,我在本地自己的一个项目演示了一下, 现在我这个服务器接口返回的响应头设置了Cache-Control:max-age是一年的时间 重启服务器再运行我的项目,点开浏览器调试, 在Network中可以看到第一次请求这个接口的资源的时候,返回的是200 OK, 当我第二次去请求的时候, 可以看到状态码就变成了 200 (from disk cache),也就是从磁盘中读取的缓存文件 这样就是命中强缓存啦 接着来试一下协商缓存 现在我把Cache-control中的max-age设成了0,也就是每次请求的时候强缓存都会失败,我又接着设置了Last-modified属性,etag就先不写了,道理也是一样的 那我们再接着去浏览器中看一下现在的请求结果~ 可以看到这个时候响应头中就带上了Last-Modified 再次请求试一下~ 验证成功~现在的请求头已经带上了If-Modified-Since,浏览器会判断是否和Last-Modified是否相等,现在判断是相等的也就是命中了协商缓存,返回304,从本地读取缓存。 补充一点:上文说了缓存会存在两个地方,memory cache或者disk cache,一般来说需要经常读取的文件,比如图片,JS会存在memory cache,不会经常读取的比如css文件会存在disk cache中 二.DNS域名解析 查找主机中的浏览器中DNS缓存,缓存中维护了一张域名和IP地址的对应表 查询本地域名服务器,注意主机和本地域名服务器为递归查询,也就是主机需要的Ip地址一定要从本地域名服务器查询获得,不论他是自身查到的还是继续向上从哪一级获取的 哎(′ο`*))) 这篇文章内容好像有点多了…TCP三次握手和四次挥手内容就放到之后的文章专门说吧,先放两个图 ̄□ ̄|| 三.TCP三次握手 四.TCP四次挥手 感谢阅读!欢迎指正~ 觉得写得还不错可以关注我的公众号:西元前的小铁匠 参考: 浏览器缓存机制 博客园 吴秦(Tyler) 卧槽!牛皮了,头一次见有大佬把TCP/IP三次握手四次挥手解释的这么明白 知乎 爱前端不爱恋爱 超详细 DNS 协议解析 掘金 飞天小牛肉 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/28 6:34:26- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |