signed

QiShunwang

“诚信为本、客户至上”

6.2_http相关知识

2021/6/3 16:53:08   来源:

01、什么是http

http :传输协议,前后端交互的协议。
file:// 本地协议。

前端以什么样的形式将数据发送给后端。

后端以什么样的形式将数据响应给前端。

02、常见的协议以类型

(1)TCP协议类型:http

(2)UDP协议类型:

​ 优点:传输效率高 可以1对多,多对1.

​ 缺点:不保证顺序,不保证是否丢失数据。

eg:
老师是个超级有趣的小伙子

小伙子超级有趣的

03、传输的步骤

  1. 建立连接
  2. 发送请求
  3. 返回响应
  4. 断开连接

建立连接只能由浏览器端发起。

不管是请求还是响应,传输的数据都只能是字符串。一般用json字符串。

04、三次握手和四次挥手

(1)三次握手保证连接的正常建立: 二次握手不能保证浏览器端正常访问。四次握手有点多余。
——>
<——
——>

(2)四次挥手:

  • 浏览器端向服务端发送一个消息:我要断开连接了
  • 服务端向浏览器端发送一个消息:好的,我处理一下数据。
  • 等服务端处理完数据,再发生一个消息:你可以断开连接了,我已经准备好了。
  • 浏览器端向服务端发送一个消息:我真的断开连接了,别回了。
    ——>
    <——
    <——
    ——>

05、报文

在http中请求和响应的数据就叫做报文。请求的数据叫做请求报文,响应的数据叫做响应报文。

数据块:要传输的数据和一些附加消息,比如cookie,地址等等。

5.1 请求报文的组成

请求行、 请求头 、请求体

//请求行
GET / HTTP/1.1      //get 请求方式  http传输协议 1.1 传输协议的版本
//请求头
Host: localhost:3000     //请求主机
Connection: keep-alive   //保持连接
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36    //请求终端
Accept: text/html,application/xhtml+xml,application/xml;     //可以接收的数据类型
Accept-Language: zh-CN,zh;q=0.9       //可以接收的数据类型的语言

//请求体
前端给后端的参数

5.2 响应报文的组成

状态行 响应头 响应体

//状态行
HTTP/1.1 200 OK //HTTP/1.1 传输协议以及版本  200状态码  ok对响应码的简单描述。
//响应体的数据格式
content-type: text/platin;charset=utf8 //text/platin 纯文本 charset 编码
Date: Wed, 02 Jun 2021 02:50:04 GMT //日期

//响应体
后端返回给前端的数据

5.3 常见的状态码

  • 200 成功 //重点

  • 302 临时重定向

​ 重定向:类似于手机上的呼叫转移,本次请求访问这个地址会被引导到另外一个地址上。

  • 301 永久重定向

​ 只要访问这个地址,就一直引导到另外一个地址上。

  • 304 缓存

  • 404 访问地址不存在 //重点

  • 403 权限不够

  • 500 服务端错误 //重点