前言
在互联网的浩瀚海洋中,有一种协议如同灯塔,为我们指引方向,那就是HTTP(超文本传输协议)。作为网页浏览、数据交互和网络应用不可或缺的基础,HTTP协议在这场数字革命中扮演了至关重要的角色。无论是我们在浏览器中输入网址,还是使用移动应用进行数据传输,背后都离不开这个简单而又强大的协议。
自从1991年首次提出以来,HTTP不断发展与演变,伴随着互联网的进步而蜕变。随着技术的发展,前沿的HTTP/2和HTTP/3相继问世,为网络性能、安全性以及用户体验带来了新的变革。了解HTTP协议的工作原理、基本特点及其在现代网络中的应用,不仅能帮助开发者提升技术水平,也能让普通用户更好地理解日常网络活动的背后逻辑。
在本篇博客中,我们将简单讲述一下HTTP协议请求与响应机制。无论您是对网络技术充满好奇的小白,还是希望深入探索协议细节的技术专家,都能在这里找到所需的知识与启发。让我们一同揭开HTTP协议的神秘面纱,探索这一互联网通信的基石。
什么是http协议?
http协议(超文本传输协议),是应用于web应用程序协议。
主要作用:实现客户端与 服务器之间的通信,使得用户可以访问网页、提交表单。
http协议的工作原理
工作方式:
(1)客户端向服务器发送请求,请求中包含(get、post、delete、put)和url和一些头部信息
(2)服务器受到请求后,做出处理并返回响应,响应内容包含状态码、头部信息和内容
(3)关闭连接
访问网页的具体过程:
1.输入网址:https://www.yuque.com/ahsjdhajk?parm=1 DNS先进行域名解析
https代表协议 www.yuque.com代表域名 /ahsjdhajk是路径 ?parm=1是查询参数
2.客户端发送tcp请求与服务端三次握手建立连接
3.客户端向服务端发送HTTP请求(request)
4.服务端返回HTTP(response)
5.客户端拿到数据进行页面渲染
6.断开连接(四次挥手)
http协议的主要特点
(1)无状态:HTTP协议是一个无状态的协议,这意味着每个请求都是独立的,服务器不会保存前一次请求的任何信息。这一特点使得HTTP在处理大量请求时表现出色。
(2)灵活性:HTTP协议支持多种请求方式POST、GET、DELETE、PUT使得客户端能多种向服务器资源做出操作。
(3)支持多种数据格式:HTTP允许在请求和响应中传输各种类型的数据,如HTML、JSON、XML等。
拓展
三次握手、四次挥手过程
三次握手:
第一次握手:客户端向服务器发送一个SYN包。包中包含一个随机生成的序列号ISN,用于表示发送第一个字节的序号。客户端进入SYN_SEND状态,表示客户端已经做好发送数据的准备,但不确定服务器是否准备好接收数据。
第二次握手:服务器收到SYN包,向客户端发送一个SYN-ACK(同步确认)。该包通过ACK(为客户端ISN+1)确认了客户端SYN请求,同时也发送了一个SYN字段。服务器进入SYN_RECV状态。表示客户端已接收,准备与客户端通信。
第三次握手:客户端收到SYN_ACK包后,会发送一个ACK(确认包),为服务器ISN+1,发送完毕,客户端和服务器进入ESTABLISHED状态,表示连接建立。
四次挥手:
第一次挥手:客户端(任意一方都可)向服务器发送FAN包,表示客户端不在发送数据,之后客户端静茹FIN_WAIT_1状态。
第二次挥手:服务器收到FAN包,会向客户端发送ACK包确认收到了客户端关闭的请求。服务器进入CLOSE_WAIT.此阶段客户端不在接收数据,但是服务器仍然可发送。
第三次挥手:当服务器不在发送数据时,服务器会送FAN包给客户端。等待服务器的响应,进入LAST_ACK状态.
第四次挥手:客户端收到FAN包后,会发送ACK确认包给服务器,客户端进入TIME_WAIT。服务器收到ACK进入CLOSE.完成连接的断开。经过2个报文段最长寿命,客户端进入CLOSE状态。
常见接口响应状态码


被折叠的 条评论
为什么被折叠?



