一、网络分层

1、TCP/IP分层管理(TCP/IP:网络传输层协议

TCP/IP协议按层次主要为:应⽤层,传输层,⽹络层,数据链路层。

2、应用层

(1) HTTP(应用层协议)

版本:V1.1

(2) Websocket

客户端和服务端之间持久连接

(3) grpc(分布式架构)

是谷歌给予http2.0版本来设计的

理解:远程过程调用

访问远程像调用本地的一样

 二、HTTP协议

1、微服务架构的通信模式(分布式架构演变而来):

在微服务的架构中,采用的是轻量级的REST API的通信模式,或者使用grpc协议

REST API:

(1)   HTTP协议(无状态的协议码)

(2)   JSON格式

 2、http请求流程

(1)http是一种无状态的协议码

(2) 所以就演变了cookie技术的发展,但是cookie存储在客户端(本地),不安全

(3) 所以又有了session,而session存储在服务端,如数据库、Redis

(4) Token:本质上使用session原理实现的,又称为令牌

cookie请求流程

 API自动化测试——HTTP协议_服务端

Session请求流程

 API自动化测试——HTTP协议_微服务_02

token请求流程

 API自动化测试——HTTP协议_分布式架构_03

三、面试内容

1、HTTP请求流程

2、请求方法

3、请求头(request)和请求(response)

4、cookie请求流程、session请求流程、token请求流程,以及HTTPS请求流程

四、HTTPS (超文本传输安全协议)

HTTP的协议它是存在缺陷的,这些缺陷主要为:

(1)     通信内容是明⽂,内容很可能被第三⽅获取到

(2)     不验证通信⽅的身份信息,容易被伪装

(3)     ⽆法证明请求头的完整性

基于HTTP存在这些缺陷,也就有了HTTPS的协议,我们可以把HTTPS可以汇总为:HTTPS=HTTP+加密+认证+完 整性保护。

HTTP认证体系

HTTP/1.1版本中,使⽤的认证具体为:

BASIC认证,也就是基本认证

DIGEST认证,也就是摘要认证