首先理解下概念,何为HTTP?
答:http(Hypertext transfer protocol)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。
那么何为协议呢?
答:所谓协议,其实就是规定,轮不到使用者协商的规定,就像中国的法律一样,每个人都必须遵守。所以,http协议就是http的规定。
HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等),http是属于“应用层的协议”

那么问题来了,既然TCP/UDP是广泛使用的网络通信协议,那为啥有多出个http协议来呢?
答:首先UDP协议具有不可靠性和不安全性,显然这很难满足web应用的需要。
TCP协议是面向连接的、可靠的、基于字节流的传输层通信协议,其基于连接和三次握手的,虽然具有可靠性,但人具有一定的缺陷。但试想一下,普通的C/S架构软件,顶多上千个Client同时连接,而B/S架构的网站,十万人同时在线也是很平常的事儿。如果十万个客户端和服务器一直保持连接状态,那服务器如何满足承载呢?,于是http就出现了。
http协议是“无状态”的,也就是“服务器不知道你客户端干了啥”,其实很大程度上是基于性能考虑的。原理就是HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
那么网页在输入URL到加载,http究竟做了哪些工作呢?

即消息结构如图:


HTTP请求消息详解:

工作中例子有:


------------================================

例子有:

浙公网安备 33010602011771号