这是我参与「第五届青训营 」笔记创作活动的第9天
今天的视频课[初识HTTP协议]是介绍Http协议的基本定义和特点,在此基础上,对于 Http 协议的发展历程及报文结构展开进一步分析。
听了老师的讲课,我把今天教授的知识进行了整理和概括,具体内容如下:
1. HTTP协议的基本定义
什么是HTTP呢?HTTP是Hyper Text Transfer Protocol的简写,中文叫做超文本传输协议。它是计算机网络中应用层的协议,是基于TCP的协议。同时它具有简单可扩展,无状态等特点。
HTTP的发展主要分为以下几个阶段:
- HTTP/0.9版本单行协议。其主要功能有请求GET/mypage.html,响应只有HTML文档。
- HTTP/1.0版本,构建可扩展性,其增加了Header,有了状态码,同时支持多种文档类型。
- HTTP/1.1标准化协议,它包括链接复用,缓存,内容协商等等。
- HTTP/2版本,这一版本具有更加优异的表现,它具有二进制协议,压缩header,服务器推送等特点。
现在也有许多开发者在进行HTTP/3的研发,并且提出了草案。
2. HTTP协议主要特征
HTTP中具有许多的method,并且这些method的作用各不相同。下面我例举一些常用的:
- get,请求一个指定资源的表示形式,使用get的请求应该只被用于获取数据。
- post,用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用。
- put,用于请求有效载荷替换目标资源的所有当前表示。
- delete,删除指定的资源。
- connect,建立一个到由资源目标标识的服务器的隧道。
- options,用于描述目标资源的通信选项。
当然还有一些方法没有举出来,在这一基础上HTTP同时具备其它两个特点。
- 安全:不会修改服务器的数据的方法。
- 幂等:同样的请求被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的。
HTTP协议具备许多状态码,通过这些状态码服务器用来告诉客户端,当前的网页请求发生了什么事,或者说当前Web服务器的响应状态。所以HTTP状态码常用来判断和分析当前Web服务器的运行状况。状态码主要分为了五类,各效果如下:
下面我们再来看看HTTP中请求与响应的各种头部字段及其作用。
常用的请求头如下:
常用的响应头如下:
3.HTTP发展
HTTP/2的介绍
HTTP/2具有更快、更稳定、更简单的特点。HTTP/2链接是永久的,而且仅需每个来源一个链接。HTTP/2的作用具体如下:
HTTPS的介绍
HTTPS是经过加密后的HTTP,原因是HTTP有许多不安全因素。它的结构主要如下: