一、HTTP协议01


一、用户在浏览器中输入网址背后发生的事

在这里插入图片描述

二、什么是HTTP

超文本传输协议HTTP是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。
HTTP是一个属于应用层的面向对象的协议。

三、HTTP和TCP/IP的关系

HTTP协议是构建在TCP/IP协议这上的,是TCP/IP协议的一个子集。

TCP/IP协议族分层
TCP/IP协议族是由一个四层协议组成的系统,这四层分别为:应用层、传输层、网络层和数据链路层。
在这里插入图片描述
应用层
应用层一般是我们编写的应用程序,决定了向用户提供的应用服务。应用层可以通过系统调用与传输层进行通信。如:FTP、DNS、HTTP等。
传输层
传输层通过系统调用向应用层提供处理网络连接中的两台计算机之间的数据传输功能
在传输层有两个性质不同的协议TCP和UDP。
网络层
网络层用来处理在网络上流动的数据包,数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(传输路线)到达对方计算机,并把数据包传输给对方。
链路层
链路层用来处理连接网络的硬件部分,包括控制操作系统、硬件设备驱动、NIC(Network Interface Card,网络适配器)以及光纤等物理可见部分。硬件上的范畴均在链路层的作用范围之内。
上层数据是怎么转变为下层数据的?
通过层层的数据包封装
在这里插入图片描述
HTTP数据传输过程
发送端发送数据时,数据会从上层传输到下层,且每经过一层都会被打上该层的头部信息。而接收端接收数据时,数据会从下层传输到上层,传输前会把下层的头部信息删除
TCP/IP协议数据流示意图
在这里插入图片描述
传输层TCP三次握手
最终的目的是确认客户端和服务器端的接收和发送能力都是正常的就建立了一个TCP连接。
在这里插入图片描述
第一次握手:客户端发送带有SYN标志的连接请求报文段,然后进入SYN_SEND状态,等待服务端的确认。
第二次握手:服务端接收到客户端的SYN报文段后,需要发送ACK信息对这个SYN报文段进行确认。同时,还要发送自己的SYN请求信息。服务端会将上述的信息放到一个报文段(SYN+ACK报文段)中,一并发送给客户端,此时服务端将会进入SYN_RECV状态。
第三次握手:客户端接收到服务端的SYN+ACK报文段后,会向服务端发送ACK确认报文段,这个报文段发送完毕后,客户端和服务端都进入ESTABLISHED状态,完成TCP三次握手。

四、HTTP的特点

4.1、客户/服务模式

客户/服务器模式工作方式是由客户向服务器发出请求,服务器端响应请求,并进行相应服务。
1、客户连接到服务器
2、客户端向服务器发送请求
3、服务器向客户端发送响应
4、关闭连接

4.2、简单快速

  • 客户向服务器请求服务时,只需传送请求方法和路径。
  • 请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同
  • 由于HTTP协议简单,使用HTTP服务器的程序规模小,因而通信速度很快

4.3、灵活

  • HTTP允许传输任意类型的数据对象
  • 正在传输的类型由Content-Type(Content-Type是HTTP包中用来表示内容类型的标识)加以标记

4.4、无连接

  • 无连接的含义是限制每次连接只处理一个请求
  • 服务器处理完客户的请求,并收到客户的应答后,即断开连接
  • 采用这种方式可以节省传输时间

大量图片需要重新建立连接,浪费时间,keep live

4.5、无状态

  • HTTP协议是无状态协议
  • 无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
  • 另一方面,在服务器不需要先前信息时它的应答就快。

可能需要记忆一些先前用户的操作信息如购物车,这时就用到了Session,Cookie

五、HTTP报文结构分析-请求报文

在这里插入图片描述
HTTP报文头
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ACCEPT
在这里插入图片描述

Accept-Encoding
在这里插入图片描述
Accept-Language
在这里插入图片描述
Connection

在这里插入图片描述
Referer
在这里插入图片描述
User-Agnet
在这里插入图片描述
Content-Type
在这里插入图片描述
在这里插入图片描述

六、HTTP报文结构分析-响应报文

在这里插入图片描述

七、HTTP请求方法

在这里插入图片描述
GET
在这里插入图片描述
POST
在这里插入图片描述
PUT
在这里插入图片描述
HEAD
在这里插入图片描述
DELETE
在这里插入图片描述
OPTIONS
在这里插入图片描述

八、状态码

在这里插入图片描述
HTTP状态码详解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永恒的宁静

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值