Fork me on GitHub

HTTP权威指南 书摘

  1. 一组 HTTP 首部总是应该以一个空行(仅 CRLF)结束,甚至即使没有首部和实体的主体部分也应如此。但由于历史原因,很多客户端和服务器都在没有实体的主体部分时,(错误地)省略了最后的 CRLF。为了与这些流行但不符合规则的实现进行互通,客户端和服务器都应该接受那些没有最后那个 CRLF 的报文。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1057-1060的标注 2015-11-24 23:37:43

  2. 指令:将DOM元素增强为可复用的DOM组件的属性或元素。  值绑定:模板语法{{ }}可以将表达式绑定到视图上。  过滤器:可以在视图中使用的函数,用来进行格式化。  表单控件:用来检验用户输入的控件。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
    《AngularJS权威教程(适配Kindle高清版).pdf ()》 您在第 33-33 页的标注 2015-11-08 10:42:43

  3. 并行连接 通过多条 TCP 连接发起并发的 HTTP 请求。 持久连接 重用 TCP 连接,以消除连接及关闭时延。 管道化连接 通过共享的 TCP 连接发起并发的 HTTP 请求。 复用的连接 交替传送请求和响应报文(实验阶段)。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1985-1989的标注 2015-11-05 19:33:49

  4. 由于因特网自身无法确保可靠的分组传输(因特网路由器超负荷的话,可以随意丢弃分组),所以 TCP 实现了自己的确认机制来确保数据的成功传输。 每个 TCP 段都有一个序列号和数据完整性校验和。每个段的接收者收到完好的段时,都会向发送者回送小的确认分组。如果发送者没有在指定的窗口时间内收到确认信息,发送者就认为分组已被破坏或损毁,并重发数据。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1878-1881的标注 2015-11-04 12:44:33

  5. 客户端首先需要根据 URI 确定 Web 服务器的 IP 地址和端口号。如果最近没有对 URI 中的主机名进行访问,通过 DNS 解析系统将 URI 中的主机名转换成一个 IP 地址可能要花费数十秒的时间 1。 1 幸运的是,大多数 HTTP 客户端都有一个小的 DNS 缓存,用来保存近期所访问站点的 IP 地址。如果已经在本地“缓存”(记录)了 IP 地址,查询就可以立即完成。因为大多数 Web 浏览器浏览的都是少数常用站点,所以通常都可以很快地将主机名解析出来。 接下来,客户端会向服务器发送一条 TCP 连接请求,并等待服务器回送一个请求接受应答。每条新的 TCP 连接都会有连接建立时延。这个值通常最多只有一两秒钟,但如果有数百个 HTTP 事务的话,这个值会快速地叠加上去。 一旦连接建立起来了,客户端就会通过新建立的 TCP 管道来发送 HTTP 请求。数据到达时,Web 服务器会从 TCP 连接中读取请求报文,并对请求进行处理。因特网传输请求报文,以及服务器处理请求报文都需要时间。 然后,Web 服务器会回送 HTTP 响应,这也需要花费时间。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1839-1849的标注 2015-11-04 12:42:04

  6. 这是响应报文的格式(注意,只有起始行的语法有所不同):
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1032-1034的标注 2015-11-04 12:26:59

  7. 这是请求报文的格式:
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #1031-1032的标注 2015-11-04 12:25:30

  8. (a) 浏览器从 URL 中解析出服务器的主机名; (b) 浏览器将服务器的主机名转换成服务器的 IP 地址; (c) 浏览器将端口号(如果有的话)从 URL 中解析出来; (d) 浏览器建立一条与 Web 服务器的 TCP 连接; (e) 浏览器向服务器发送一条 HTTP 请求报文; (f) 服务器向浏览器回送一条 HTTP 响应报文; (g) 关闭连接,浏览器显示文档。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #454-458的标注 2015-11-04 07:48:23

  9. 起始行 报文的第一行就是起始行,在请求报文中用来说明要做些什么,在响应报文中说明出现了什么情况。 首部字段 起始行后面有零个或多个首部字段。每个首部字段都包含一个名字和一个值,为了便于解析,两者之间用冒号(:)来分隔。首部以一个空行结束。添加一个首部字段和添加新行一样简单。 主体 空行之后就是可选的报文主体了,其中包含了所有类型的数据。请求主体中包括了要发送给 Web 服务器的数据;响应主体中装载了要返回给客户端的数据。起始行和首部都是文本形式且都是结构化的,而主体则不同,主体中可以包含任意的二进制数据(比如图片、视频、音轨、软件程序)。当然,主体中也可以包含文本。
    《HTTP权威指南 (图灵程序设计丛书) ([美]David Gourley Brian Totty Marjorie Sayer Sailu Reddy Aushu Aggarwal)》 您在位置 #406-414的标注 2015-11-04 07:41:22

posted @   路西恩  阅读(126)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示