通讯协议四、认识http和https

Posted by DDW on 06-30,2021

一、协议简介

http、https是一种超文本传输协议,一种无状态的,以请求/应答方式运行的协议,它可以使用拓展的语义和自描述消息的格式,与基于网络的超文本信息系统灵活的互动。

二、HTTP报文形式

  • 起始行:描述请求相应的基本信息。
  • 头部字段集合:使用key-value,形式更详细的说明报文
  • 消息正文:实际传输的数据,它不一定是纯文本,可以是图片、视频等。123123

1、请求头报文形式:

image
请求方法:如GET/HEAD/PUT/POST
请求目标:通常是一个UTL,标记了请求方法要操作的资源
版本号:表示报文使用的HTTP协议的版本

2、响应行报文格式

2222

  • 状态码:一个三位数,表示处理的结果,比如200是成功,500是服务器错误
  • 原因:作为状态码的补充,帮助人理解

3、HTTP头字段

头部字段是由key-value形式,在key和value之间用“:”分隔,最后用CRLF换行表示字段结束。比如前后分离时经常遇到的要与后端协商传输数据的类型“Contect tpye:application/json”,这里key就是Contect tpye,value就是“application/json”。HTTP头字段非常灵活,不仅可以使用HOST、connection等已有头,也可以自定义,这就给HTTP带来了无限可能。
头字段注意事项:

  • 字段名不区分大小写,字段名里不允许出现空格,可以使用连字符“-”,但不能使用下划线_。
  • 字段的顺序没有意义,可以任意排列。
  • 字段原则上不能重复,除非这个字段的语义本身允许,例如SET-COOKIE
    字段类型:
    请求字段:host,Referer
    响应字段:Server,Data
    通用字段:Content_tpye,Connection;

三、HTTPS协议

HTTPS
HTTPS只是在HTTP基础上增加一个SSL/TSL(安全层),然后再利用socket和tcp协议交互。

1、SSL/TSL

SSL即安全套接层,现在最新版本是2018的1.3。
其实就是利用摘要算法、对称加密和非对称加密算法实现加密。
TSL会结合使用这几种加密算法实现加密。222223123