第一章.HTTP概述

一、因特网的多媒体信使

Web浏览器、服务器、和相关的Web应用都是通过HTTP相互通信的,HTTP使用的是可靠的数据传输协议,因此即使数据来自地球的另一端,它也能确保数据在传输过程中不会被损坏或者产生混乱。

二、Web客户端和服务器

Web内容都是存储在Web服务器上的,Web服务器所使用的 是HTTP协议,因此会被成为HTTP服务器。如果Web客户端向服务器发出HTTP请求,服务器会在HTTP响应中回送所请求的数据(如果有的话)。如图:

Web客户端和服务器

三、资源

Web服务器是Web资源的宿主,Web资源是Web内容的源头。Web资源就是Web服务器文件系统中的静态文件和根据需求产生内容的的软件程序,静态文件包含了很多格式:文本文件,富文本文件(图片、电影、音乐等)。

3.1、媒体类型

互联网中成千上万的不同数据类型用MIME type 来表示。Web服务器为所有HTTP对象数据附加了一个MIME类型。MIME类型是一种文本标记,表示一种一种主要的对象类型和一个特定的子类型,中间用斜杠(/)隔开。常见的有:text/html、text/plaint、image/jpeg、image/gif 等类型。在请求头或者响应头中用Content-type:对象类型/子类型的形式来表示。

3.2、URI

服务器资源名被统一称为统一资源标识符,它就像互联网的邮件地址一样,在世界范围内唯一标识并定位信息资源。URI分为两类:URL和URN。

3.3、URL

URL是统一资源定位符的英文简称,是统一资源标识符的常见形式。URL描述了一台特定服务器上的某个特定资源。URL统一 遵循一个这样的格式:scheme://host/directory/../file,总的说来分为三个部分:

a、方案:说明了访问资源所使用的协议类型。比如:HTTP、FTP、RTSP 等。

b、服务器地址:某个资源所在服务器的IP地址。比如:8.8.8.8(也有可能是域名)。

c、指定的资源所在服务器的资源存在位置。比如:/works.html。

URL组成

3.4、URN

URN是统一资源名的英文简称,其作为特定内容的唯一名称,与资源所在地无关。

四、事务

事务,一般是指要做的或所做的事情。HTTP事务是指从客户端发送一个HTTP请求开始到服务器返回一个HTTP响应结束的过程。所以:一条HTTP事务有一个请求命令和一个响应结果组成。

HTTP事务

4.1、方法

HTTP支持几种不同的请求命令,这些命令被称为HTTP方法。每个HTTP请求报文都包含一个方法,这些方法主要有五种:

五种常见HTTP方法

4.2、状态码

每个响应报文(在响应行中)都会附带一个状态码,状态码是一个三位数的代码,用于告知客户端请求是否成功,或者是否采取其他动作。伴随着状态码一起出现的还有一条解释性的“原因短语”文本,它是作为状态码的补充。状态码各个三位数 代表的意思请查看状态码合集

4.3、Web页面中可以包含多个对象。

也即是:应用程序完成一项任务时通常会发布多个HTTP事务。比如一个Web页面的加载需要请求返回HTML页面的服务器,还要请求加载图片的服务器(服务器与之前一个可同可不同)。这是因为一个Web界面通常不只一个元素,而是一组元素。

五、报文

HTTP报文由一行行字符串组成,纯文本,包括请求报文和响应报文。请求报文是客户端发送到服务器的HTTP报文;响应报文是服务器发送到客户端的报文。HTTP报文包括三个部分:首行、首部字段和主体。如图:

报文组成

六、连接

6.1、TCP/IP

TCP:传输控制协议的英文简称。HTTP协议是应用层协议,TCP是传输层协议。TCP的优点是:无差错的数据传输;按序传输;未分段的数据流(可以在任何时刻任意大小将将数据发送出去)。

TCP/IP协议:全世界的计算机和网络设备常用的层次化分组交换网络协议集。HTTP位于TCP上层,TCP位于IP上层。HTTP使用TCP来传输其报文数据。

6.2、连接、IP地址及端口号

在HTTP客户端向服务器发送报文的时候,需要 使用IP地址以及端口号在客户端和服务器之间建立一条TCP/IP连接。IP地址是:服务器的网络地址;端口号是与服务器上运行的特定软件相关的TCP连接唯一标识。这里是端口号合集

一般来说建立连接(浏览器为例)的步骤是:

a、浏览器从URL中解析出主机名;

b、浏览器将主机名转换成IP地址 ;

c、浏览器从URL中解析出端口号(如果没有,默认是80);

d、建立一条与Web服务器的TCP连接;

e、浏览器向服务器发送一条HTTP请求报文;

f、服务器向浏览器发送一条HTTP响应报文;

g、关闭连接,浏览器显示文档

七、协议版本

(略)

八、Web的结构组件

8.1、代理

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

8.2、缓存

HTTP的仓库,使常用的页面副本可以保存在离客户端更近的地方。

8.3、网关

一种特殊服务器,作为其他服务器的中间实体使用。通常将HTTP流量转换成其他协议。下面是 一个HTTP/FTP网关的示意图:

网关

8.4、隧道

隧道是建立起来之后,就可以在两条连接之间对原始数据进行盲转发的HTTP应用程序。通常用来在一条或者多条HTTP连接上转发非HTTP数据,转发过程中不会窥探数据。

8.5、Agent代理

代表用户发起HTTP请求的客户端程序。有Web浏览器、网络爬虫、网络机器人等。

《完》

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

推荐阅读更多精彩内容