HTTP权威指南 一二章

2018 6月记

《HTTP权威指南》 阅读总结

前言

--

HTTP(Hypertext Transfer Protocol,超文本传输协议 ① )是在万维网上进行通信时

所使用的协议方案。HTTP 有很多应用,但最著名的是用于 Web 浏览器和 Web 服

务器之间的**双工通信**。

(**双工通信**是指在同一时刻信息可以进行双向传输,和打电话一样,说的同时也能听,边说边听。这种发射机和接收机分别在两个不同的频率上(两个频率差有一定要求)能同时进行工作的双工机也称为异频双工机。)


HTTP:Web的基础

第 1 章简要概述 HTTP。 

第 2 章详细介绍了 URL 的格式,以及 URL 在因特网上命名的各种类型的资源,


Web 浏览器、服务器和相关的 Web 应用程序都是通过 HTTP 相互通信的。HTTP 是现代全球因特网中使用的公共语言。


HTTP——因特网的多媒体信使

每天,都有数以亿万计的 JPEG 图片、HTML 页面、文本文件、MPEG 电影、WAV

音频文件、Java 小程序和其他资源在因特网上游弋。HTTP 可以从遍布全世界的

Web 服务器上将这些信息块迅速、便捷、可靠地搬移到人们桌面上的 Web 浏览器

上去。

HTTP 使用的是可靠的数据传输协议,因此即使数据来自地球的另一端,它也能够

确保数据在传输的过程中不会被损坏或产生混乱。这样,用户在访问信息时就不用

担心其完整性了,因此对用户来说,这是件好事。而对因特网应用程序开发人员来

说也同样如此,因为这样就无需担心 HTTP 通信会在传输过程中被破坏、复制或产

生畸变了。开发人员可以专注于应用程序特有细节的编写,而不用考虑因特网中存

在的一些缺陷和问题。

资源

Web 服务器是 Web 资源(Web resource)的宿主。Web 资源是 Web 内容的源头。

最简单的 Web 资源就是 Web 服务器文件系统中的静态文件。这些文件可以包含

任意内容:文本文件、HTML 文件、微软的 Word 文件、Adobe 的 Acrobat 文件、

JPEG 图片文件、AVI 电影文件,或所有其他你能够想到的格式。

但资源不一定非得是静态文件。资源还可以是根据需要生成内容的软件程序。这些

动态内容资源可以根据你的身份、所请求的信息或每天的不同时段来产生内容。它

们可以为你显示照相机中活生生的照片,也可以帮你进行股票交易,搜索房产数据

库,或者从在线商店中购买礼物

URI


每个 Web 服务器资源都有一个名字,这样客户端就可以说明它们感兴趣的资源是

什么了。服务器资源名被称为统一资源标识符(Uniform Resource Identifier,URI)。

URI 就像因特网上的邮政地址一样,在世界范围内唯一标识并定位信息资源。统一资源定位符(URL)是资源标识符最常见的形式。URL 描述了一台特定服务器上某资源的特定位置。它们可以明确说明如何从一个精确、固定的位置获取资源。


大部分 URL 都遵循一种标准格式,这种格式包含三个部分。

URL 的第一部分被称为 •  方案(scheme),说明了访问资源所使用的协议类型。这

部分通常就是 HTTP 协议(http://)。

第二部分给出了服务器的因特网地址(比如,www.uniyo.club)

其余部分指定了 Web 服务器上的某个资源(比如,/specials/saw-blade.gif)。 •

现在,几乎所有的 URI 都是 URL。


(URN :URN 仍然处于试验阶段,还未大范围使用。为了更有效地工作,URN 需要一个支撑架构来解析资源的位置。而此类架的缺乏也延缓了其被采用的进度。但 URN确实为未来发展作出了一些令人兴奋的承诺。)



我们来更仔细地看看客户端是怎样通过 HTTP 与 Web 服务器及其资源进行事务处理

的。一个 HTTP 事务由一条(从客户端发往服务器的)请求命令和一个(从服务器

发回客户端的)响应结果组成。这种通信是通过名为 HTTP 报文(HTTP message)

的格式化数据块进行的,如图 1-5 所示



HTTP常见的 请求命令


状态码

每条 HTTP 响应报文返回时都会携带一个状态码。状态码是一个三位数字的代码,

告知客户端请求是否成功,或者是否需要采取其他动作。表 1-3 显示了几种常见的

状态码。

报文

从 Web 客户端发往 Web 服务器的 HTTP 报文称为请求报文(request message)。从服务器发往客户端的报文称为响应报文(response message),此外没有其他类型的HTTP 报文。HTTP 请求和响应报文的格式很类似。


HTTP 报文包括以下三个部分。

起始行 •

报文的第一行就是起始行,在请求报文中用来说明要做些什么,在响应报文中说

明出现了什么情况。

首部字段 •

起始行后面有零个或多个首部字段。每个首部字段都包含一个名字和一个值,为

了便于解析,两者之间用冒号(:)来分隔。首部以一个空行结束。添加一个首

部字段和添加新行一样简单。

主体 •

空行之后就是可选的报文主体了,其中包含了所有类型的数据。请求主体中包括

了要发送给 Web 服务器的数据;响应主体中装载了要返回给客户端的数据。起

始行和首部都是文本形式且都是结构化的,而主体则不同,主体中可以包含任意

的二进制数据(比如图片、视频、音轨、软件程序)。当然,主体中也可以包含

文本



TCP/IP


HTTP 是个应用层协议。HTTP 无需操心网络通信的具体细节;它把联网的细节都交给了通用、可靠的因特网传输协议 TCP/IP。


无差错的数据传输; •

按序传输(数据总是会按照发送的顺序到达); •

未分段的数据流(可以在任意时刻以任意尺寸将数据发送出去)。

因特网自身就是基于 TCP/IP 的,TCP/IP 是全世界的计算机和网络设备常用的层次

化分组交换网络协议集。TCP/IP 隐藏了各种网络和硬件的特点及弱点,使各种类型

的计算机和网络都能够进行可靠地通信。

只要建立了 TCP 连接,客户端和服务器之间的报文交换就不会丢失、不会被破坏,

也不会在接收时出现错序了。

用网络术语来说,HTTP 协议位于 TCP 的上层。HTTP 使用 TCP 来传输其报文数

据。与之类似,TCP 则位于 IP 的上层(参见图 1-9)。




Web的结构组件


代理 •

位于客户端和服务器之间的 HTTP 中间实体。

缓存 •

HTTP 的仓库,使常用页面的副本可以保存在离客户端更近的地方。可以将经过代理传送的常用文档复制保存起来。下一个请求同一文档的客户端

就可以享受缓存的私有副本所提供的服务了

网关 •

连接其他应用程序的特殊 Web 服务器。

网关(gateway)是一种特殊的服务器,作为其他服务器的中间实体使用。通常用于

将 HTTP 流量转换成其他的协议。网关接受请求时就好像自己是资源的源端服务器

一样。客户端可能并不知道自己正在与一个网关进行通信。

隧道 •

HTTP 隧道的一种常见用途是通过 HTTP 连接承载加密的安全套接字层(SSL,Secure Sockets Layer)流量,这样 SSL 流量就可以穿过只允许 Web 流量通过的防火墙了。

对 HTTP 通信报文进行盲转发的特殊代理。

Agent 代理 •

发起自动 HTTP 请求的半智能 Web 客户端。




第二章 URL与资源

我们可以把因特网当作一个巨大的正在扩张的城市,里面充满了各种东西

url就是因特网资源的标准化名称

URI是一类通用的资源标识符,url是她的一个子集。URI是一个概念,由rul和urn组成

但多数情况下,都是 讲的是 URL



ULR的语法

主机与端口

用户名和密码

路径

参数

查询字符串

片段

URL的快捷方式

相对URL

自动拓展URL


 未来展望

URL是一种强有力的工具。可以用来命名所有现存对象,而且可以很方便地包含一些新格式。

但URL也有缺陷,它表示的是实际地址,而不是准确的名字。意味着url会告诉你资源此时的位置。缺点在于如果资源被移走了,url也就无效了。

URN是一种通过名字对资源进行定位的方法。这样子不管资源位置是否移走了。通过URN命名直接找到资源。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容