摘要:
HTTP缓存相关的问题好像是前端面试中比较常见的问题了,上来就会问什么cache-control字段有哪些,有啥区别啥的。嗯……说实话,我觉得至少在本篇来说,HTTP缓存还算不上复杂,只是字段稍微多了点,大家用心记一下就好啦。 缓存的概念,其实在你访问互联网中的任何资源其所产生的任何链路中的每一个节 阅读全文
摘要:
我们在之前的文章中介绍HTTP特性的时候聊过,HTTP是无状态的,每次聊起HTTP特性的时候,我都会回忆一下从前辉煌的日子,也就是互联网变革的初期,那时候其实HTTP不需要有状态,就是个浏览页面,没有什么需要记录信息的地方,所以无状态完全符合当时的场景。 另外,无状态也给HTTP带来了不少的好处,正 阅读全文
摘要:
我们知道,用来传输页面的协议就是HTTP协议,全称是超文本传输协议,而浏览器展示的页面则是用HTML编写的,HTML的全称则是超文本标记语言。你看,都叫做超文本,我在第一篇文章的时候也详细的聊过,超文本区别于文本的本质就是文本中具有超链接的文本。 当我们点击页面中的超链接,则会跳转到其它超文本页面, 阅读全文
摘要:
这一篇文章,我们核心要聊的事情就是HTTP的对头阻塞问题,因为HTTP的核心改进其实就是在解决HTTP的队头阻塞。所以,我们会讲的理论多一些,而实践其实很少,要学习的头字段也只有一个,我会在最开始就讲完这个头字段,然后我们安心的去学习接下来的理论知识,嗯……这些理论知识很重要。 那我们就先来看看我们 阅读全文
摘要:
我真没想到这篇文章竟然写了将近一个月,一方面我在写这篇文章的时候阳了,所以将近有两周没干活,另外一方面,我发现在写基于Node的HTTP的demo的时候,我不会Node,所以我又要一边学学Node,一边百度,一边看HTTP,最后百度的东西百分之九十不能用,所以某些点就卡的我特别难受。 比如最后的分段 阅读全文
摘要:
本来啊,本来,本来我在准备完善这个鸽了四年的系列的时候,是打算按照时间的顺序来完成的,好吧。我承认那个时候考虑的稍稍稍稍稍微有些不足,就是我忽略了HTTP协议的“模块性“。因为虽然按照时间顺序写写流水账好像是个不错的选择,但是写着写着发现,其实HTTP的头字段,往往是一块一块的,这一块的部分包含了某 阅读全文
摘要:
前面几篇文章,我从纵向的空间到横向的时间,再到一个具体的小栗子,可以说是全方位,无死角的覆盖了HTTP的大部分基本框架,但是我聊的都太宽泛了,很多内容都是一笔带过,再加上一句后面再说就草草结束了。并且我还漏了一点东西,就是HTTP本身。 所以那,这一章,我们回到我们的核心论点,来聊一聊HTTP的特性 阅读全文
摘要:
前两篇文章,我们从空间和时间的角度都对HTTP有了一定的学习和理解,那么基于上一篇的HTTP发展的时间顺序,我会在后面的文章由浅入深,按照HTTP版本内容的更迭,一边介绍相关字段的使用方法,一边讲解其特性和目的,并和大家一起手写测试代码,学以致用。 当然在真正进入时间线之前,我们还需要一些前置内容, 阅读全文
摘要:
上一篇我们简单的介绍了一下DoD模型和OSI模型,还着重的讲解了TCP的三次握手和四次挥手,让我们在空间层面,稍稍宏观的了解了HTTP所依赖的底层模型,那么这一篇,我们来追溯一下HTTP的历史,看一看HTTP在历史上经历了哪些发展和过程,才让这个协议一直经久不衰。 最开始,在20世纪60年代,也就是 阅读全文
摘要:
时隔四年,这个系列鸽了四年,我终于觉得我可以按照自己的思路和想法把这个系列完整的表达出来了。 想起四年前,那时候还是2018年的六月份,那时候我还工作不到两年,那时候我翻译了RFC2616的部分内容,发布在了博客园上,并在翻译不久后想要开始整理并学习HTTP相关的知识内容,那时候我以为我可以了。 但 阅读全文