这是我参与「第五届青训营」伴学笔记创作活动的第7天
一、本节课重点内容
在正式讲解 Http 协议的技术细节前,本节课前置介绍 Http 协议的基本定义和特点,在此基础上,对于 Http 协议的发展历程及报文结构展开进一步分析。
这是我们这次的课程学习重点:
- HTTP 协议的基本定义
- HTTP 协议主要特征
- HTTP 协议发展历程
- HTTP 协议的报文结构
二、详细知识点介绍
初识HTTP:
整个流程分析如下:
首先,我们再浏览器的地址栏里输入地址信息(一个字符串);
然后浏览器开始处理输入信息的部分,得到一个具体的请求地址信息;
之后这个信息将会经过一个发起请求的部分,经过一个网络,来传到我们自己所部署的服务器;
再然后,服务器在处理完成请求之后再把这段信息交给互联网;
浏览器读取响应,再经过一些渲染的过程就成了我们所见到的网页画面。
什么是HTTP:是应用层的网络传输协议
每个HTTP的请求都会分为:请求、协议两部分;
HTTP在一开始是为了解决一个serve的通信的一个需求而产生的。
结构:
以下是HTTP的协议:
协议特性:
Safe (安全的) : 不会修改服务器的数据的方法 GET HEAD OPTIONS
Idempotent (幂等) : 同样的请求,被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的所有safe的方法都是ldempotent的GET HEAD OPTIONS PUT DELETE
还有一个比较重要的特性就是状态码:不同的数字开头有着不一样的错误状态反馈。
常用的请求头:
缓存:
协商缓存:是一个通信协商的过程
cookie:
HTTP2概述:
帧:传输的最小单位,是运用二进制进行传输的,而且加入了一些提高传递效率与速度的算法。
消息:与逻辑请求或响应消息对应的完整的一系列帧。
数据流:已建立的连接内的双向字节流,可以承载一条或多条消息。
HTTP/2连接都是永久的,而且仅需要每个来源一个连接。
流控制:阻止发送方向接收方发送大量数据的机制。
加密:
对称加密:浏览器端、服务器端的加密和解密,都是使用同一个密钥
非对称加密:浏览器端、服务器端的加密和解密需要使用两个不同的密钥:
- 公钥(public key)
- 和私钥(private key)
三、总结
本节课,老师对于HTTP的基础原理,做了解释与讲解,我学到了浏览器端与服务器端的HTTP的协议原理与HTTP的基础特征、应用、概述,收获良多。