Fork me on GitHub
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页
摘要: 在前面讲 HTTP 协议的时候,我们严格遵循了 HTTP 的“请求 - 应答”模型,协议中只有两个互相通信的角色,分别是“请求方”浏览器(客户端)和“应答方”服务器。今天,我们要在这个模型里引入一个新的角色,那就是HTTP 代理。 引入 HTTP 代理后,原来简单的双方通信就变复杂了一些,加入了一个 阅读全文
posted @ 2021-02-24 15:59 叶语婷 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 缓存(Cache)是计算机性能的一个重要概念。 由于链路漫长,网络时延不可控,浏览器使用 HTTP 获取资源的成本较高。所以,非常有必要把“来之不易”的数据缓存起来,下次再请求的时候尽可能地复用。 一、服务器的缓存控制(服务器负责控制,浏览器负责缓存) 我们以生鲜速递作为例子说一下。 如果我现在想要 阅读全文
posted @ 2021-02-24 15:41 叶语婷 阅读(94) 评论(0) 推荐(0) 编辑
摘要: “超文本”里含有“超链接”,可以从一个“超文本”跳跃到另一个“超文本”,对线性结构的传统文档是一个根本性的变革。能够使用“超链接”在网络上任意地跳转也是万维网的一个关键特性。它把分散在世界各地的文档连接在一起,形成了复杂的网状结构,用户可以在查看时随意点击链接、转换页面。由浏览器的使用者主动发起的, 阅读全文
posted @ 2021-02-24 11:57 叶语婷 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 前面有说到HTTP的性能,七个字概括:“不算差,不够好”,还了解到有“队头阻塞”这一说法,这节学习的重点就是围绕“队头阻塞'这一说法来进行。 一、短连接 HTTP传输数据基于 TCP/IP,每次发送请求前需要先与服务器建立连接,收到响应报文后会立即关闭连接。客户端与服务器的整个连接过程很短暂,不会与 阅读全文
posted @ 2021-02-24 11:16 叶语婷 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 一、数据压缩 上一篇博文有说到,如果文件过大,通常浏览器在发送请求时都会带着“Accept-Encoding”头字段,里面是浏览器支持的压缩格式列表,例如 gzip、deflate、br 等,这样服务器就可以从中选择一种压缩算法,放进“Content-Encoding”响应头里,再把原数据压缩后发给 阅读全文
posted @ 2021-02-24 10:57 叶语婷 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 我们在前面学到了HTTP报文结构,是由header+body组成。不过我们前面学的知识都还只是停留在header部分,所以现在我们要开始研究body部分。这便引出了HTTP的实体数据概念。 1. 数据类型和编码 在 TCP/IP 协议栈里,传输数据基本上都是“header+body”的格式。但 TC 阅读全文
posted @ 2021-02-24 10:26 叶语婷 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 简单、灵活、易于扩展 首先,HTTP 最重要也是最突出的优点是“简单、灵活、易于扩展”。 应用广泛、环境成熟 HTTP 协议的另一大优点是“应用广泛”,软硬件环境都非常成熟。 无状态 看过了两个优点,我们再来看看一把“双刃剑”,也就是上一讲中说到的“无状态”,它对于 HTTP 来说既是优点也是缺点。 阅读全文
posted @ 2021-02-23 17:46 叶语婷 阅读(635) 评论(0) 推荐(0) 编辑
摘要: 灵活可扩展 首先, HTTP 协议是一个“灵活可扩展”的传输协议。 可靠传输 第二个特点, HTTP 协议是一个“可靠”的传输协议。 应用层协议 第三个特点,HTTP 协议是一个应用层的协议。 请求 - 应答 第四个特点,HTTP 协议使用的是请求 - 应答通信模式。 无状态 第五个特点,HTTP 阅读全文
posted @ 2021-02-23 17:41 叶语婷 阅读(542) 评论(0) 推荐(0) 编辑
摘要: URI,统一资源标识符(Uniform Resource Identifier)。因为它经常出现在浏览器的地址栏里,所以俗称为“网络地址”,简称“网址”。 一、URI格式 URI 本质上是一个字符串,这个字符串的作用是唯一地标记资源的位置或者名字。 下面的这张图显示了 URI 最常用的形式,由 sc 阅读全文
posted @ 2021-02-23 17:36 叶语婷 阅读(1658) 评论(0) 推荐(0) 编辑
摘要: 一、今天要说的就是请求头里的请求方法。 一般最常见的是GET和POST方法,但是肯定远远不止这俩,如下所示: GET:获取资源,可以理解为读取或者下载数据;HEAD:获取资源的元信息;POST:向资源提交数据,相当于写入或上传数据;PUT:类似 POST;DELETE:删除资源;CONNECT:建立 阅读全文
posted @ 2021-02-23 17:14 叶语婷 阅读(142) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页