一、http请求的完整过程简述 1、域名解析:使用DNS协议进行域名解析 2、建立连接:发起TCP三次握手 3、发起http请求:建立TCP连接成功后,浏览器发起http请求 4、响应http请求:服务端响
一、http请求的完整过程简述1、域名解析:使用DNS协议进行域名解析 二、http请求过程举例详述比如访问:www.jb51.net,具体流程: 1、通过DNS域名解析到IP解析顺序: 2、通过IP使用ARP地址解析协议,找到对应的服务器3、找到服务器后,发起TCP三次握手建立连接在 HTTP 工作开始之前,浏览器 首先要通过网络与 服务器建立连接,该连接是通过TCP来完成的,该协议与 IP 协议共同构建 Internet,即著名的 TCP/IP 协议,因此 Internet 又被称作是TCP/IP网络。HTTP 是比 TCP 更高层次的应用层协议,根据规则,只有低层协议建立之后才能进行更高层协议的连接,因此,首先要建立 TCP 连接,一般TCP连接的端口号是80。建立TCP连接需要找到连接主机,所以需要先解析域名得到 IP 再找到主机进行3 次握手建立TCP连接(两台电脑之间建立一个通信桥梁) 4、建立TCP请求后,发起HTTP请求一旦建立了 TCP 连接, 浏览器就会向 服务器发送请求命令 5、服务器响应HTTP请求,返回RESPONSE浏览器向服务器发出请求后,服务器会对其进行应答,应答内容包括:协议的版本号和应答状态码 :HTTP/1.1 200 OK,响应头信息来记录服务器自己的数据,被请求的文档内容。最后发送一个空白行来表示头信息的发送到此为结束,接着以Content-Type响应头信息所描述的格式发送用户所请求的实际数据 6、浏览器解析response,并请求其它的资源文件(js、css等)浏览器接收服务器应答回来的 html 代码和css,和js代码再进行页面的渲染或者接收到应答的文件进行保存等操作 7、浏览器进行渲染界面根据解析内容渲染呈现给用户 8、四次挥手,断开tcp连接断开不一定是在最后一步,根据是否是长连接,来决定什么时候断开 一般情况下,服务器向浏览器发送了响应数据,就可关闭 TCP 连接,但如果浏览器或者服务器在其头信息加入了这行代码:Connection:keep-alive,即代表长连接,可以先不断开连接。 TCP连接在发送后将仍然保持打开状态,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽 三、总结&扩展完整的http请求包含: 浏览器发起请求-> 解析域名得到ip进行TCP连接 ->浏览器发送HTTP请求和头信息发送->服务器对浏览器进行应答,响应头信息和浏览器所需的内容-> 关闭TCP连接或保持-> 浏览器得到数据数据进行渲染 |
2022-11-25
2022-08-26
2022-09-23
2022-09-30
2022-09-23