HTTP协议图--HTTP 工作过程

HTTP请求响应模型

HTTP通信机制是在一次完整的 HTTP 通信过程中,客户端与服务器之间将完成下列7个步骤:

  1. 建立 TCP 连接
    在HTTP工作开始之前,客户端首先要通过网络与服务器建立连接,该连接是通过 TCP 来完成的,该协议与 IP 协议共同构建 Internet,即著名的 TCP/IP 协议族,因此 Internet 又被称作是 TCP/IP 网络。HTTP 是比 TCP 更高层次的应用层协议,根据规则,只有低层协议建立之后,才能进行高层协议的连接,因此,首先要建立 TCP 连接,一般 TCP 连接的端口号是80;
  2. 客户端向服务器发送请求命令
    一旦建立了TCP连接,客户端就会向服务器发送请求命令;
    例如:GET/sample/hello.jsp HTTP/1.1
  3. 客户端发送请求头信息
    客户端发送其请求命令之后,还要以头信息的形式向服务器发送一些别的信息,之后客户端发送了一空白行来通知服务器,它已经结束了该头信息的发送;
  4. 服务器应答
    客户端向服务器发出请求后,服务器会客户端返回响应;
    例如: HTTP/1.1 200 OK
    响应的第一部分是协议的版本号和响应状态码
  5. 服务器返回响应头信息
    正如客户端会随同请求发送关于自身的信息一样,服务器也会随同响应向用户发送关于它自己的数据及被请求的文档;
  6. 服务器向客户端发送数据
    服务器向客户端发送头信息后,它会发送一个空白行来表示头信息的发送到此为结束,接着,它就以 Content-Type 响应头信息所描述的格式发送用户所请求的实际数据;
  7. 服务器关闭 TCP 连接
    一般情况下,一旦服务器向客户端返回了请求数据,它就要关闭 TCP 连接,然后如果客户端或者服务器在其头信息加入了这行代码 Connection:keep-alive ,TCP 连接在发送后将仍然保持打开状态,于是,客户端可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽。
相关推荐
这个人需要休息11 小时前
TCP/IP 协议栈
服务器·网络·网络协议·tcp/ip
kkce11 小时前
快快测(KKCE)TCping 检测全面升级:IPv6 深度覆盖 + 多维度可视化,重构网络性能监测新体验
服务器·网络·重构
NiKo_W11 小时前
Linux 传输层协议
linux·运维·网络·tcp协议·传输层·udp协议
xixixi7777711 小时前
攻击链重构的技术框架
网络·安全·重构
cxr82812 小时前
深度解析顶级 Doc Agent System Prompt 的架构与实践
网络·人工智能·架构·prompt·ai智能体·ai赋能·上下文工程
weixin_4171905512 小时前
一、UDP以太网帧格式
网络·网络协议·udp
未来的旋律~12 小时前
nginx
运维·网络·nginx
渡我白衣12 小时前
字符串的陷阱与艺术——std::string全解析
网络·c++·人工智能·自然语言处理·智能路由器·信息与通信·caffe
杜子不疼.13 小时前
【Linux】网络编程入门:从一个小型回声服务器开始
linux·服务器·网络
许强0xq14 小时前
稳定币“三明治”:重构全球跨境结算网络
网络·金融·重构·web3·区块链·defi·稳定币