HTTP 协议 及 https简单说

180 阅读3分钟

1. HTTP协议(超文本传输协议HyperText Transfer Protocol)

它是基于TCP协议的应用层传输协议,简单来说就是客户端和服务端进行数据传输的一种规则。

2. 为啥要有这个协议?

因为服务器和要和客户端通信, 需要一个相同的语言

3. 超文本

超文本指的是超级文本, 文本中除了文字, 还可以传送图片, 音频, 视频等, 趋势就是html文件

4. 什么是传送协议

其实就是规定如何从网站服务器传送html文本-->到浏览器

5. 他是客户端和服务器端请求和响应的标准

image.png

6. 其中有报文的概念

HTTP请求由三部分组成,分别是:请求行,消息报头,请求正文。

他是请求和响应携带的数据块, 报文数据块就是两者对话的说明, 以及对话内容

只有在发送POST请求时才会有请求正文,GET方法并没有请求正文。

http的get请求一般不带body的,post时会携带数据,数据在body里,比如你要上传照片,那么照片的数据就在body里

请求报文

客户端对服务器端说的话的数据块 image.png

响应报文

image.png

HTTP的五大特点

  1. 支持客户/服务器模式。
  2. 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。
  3. 请求方法常用的有GET、HEAD、POST。
  4. 每种方法规定了客户与服务器联系的类型不同。
  5. 由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
  6. 灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
  7. 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。早期这么做的原因是请求资源少,追求快。
  8. 后来通过Connection: Keep-Alive实现长连接
  9. 无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

说一下https , 自己的理解

首先你搜到的肯定是长篇大论 随便一搜, 你看一下不论是怎么去传数据, 其实都是不安全的因为, 及时你加密, 开始的密钥总能在中间被人截取 所以就有了证书中间人, 服务器去注册, 我们访问时, 我们有中间人证明就是找到正版服务器了 然后通过服务器密钥生成自己的密钥,给正版服务器一个密钥, 这是既可以安全的请求了