当获得了IP地址之后,那么浏览器就向服务器发送HTTP的请求,下面我们就稍微看下这个发送请求是怎么样被发送的:
1. 浏览器通过发送一个TCP的包,要求服务器打开连接
2. 服务器也通过发送一个包来应答客户端的浏览器,告诉浏览器连接开了。
3. 浏览器发送一个HTTP的GET请求,这个请求包含了很多的东西了,例如我们常见的cookie和其他的head头信息。
这样,一个请求就算是发过去了。
请求发送去之后,之后就是服务器的事情了,服务器端的程序,例如,浏览器清楚的文件是一个ASP.NET的页面,那么服务器端就把请求通过IIS交给ASP.NET 运行时,最后进行一系列的活动之后,把最后的结果,当然,一般是以是以html的形式发送到客户端。
其实首先到达浏览器的就是html的那些文档,所谓的html的文档,就是纯粹的html代码,不包含什么图片,脚本,css等的。也就是页面的html结构。因为此时返回的只是页面的html结构。这个html文档的发送到浏览器的时间是很短的,一般是占整个响应时间的10%左右。
这样之后,那么页面的基本的骨架就在浏览器中了,下一步就是浏览器解析页面的过程,也就是一步步从上到下的解析html的骨架了。
如果此时在html文档中,遇到了img标签,那么浏览器就会发送HTTP请求到这个img响应的URL地址去获取图片,然后呈现出来。如果在html文档中有很多的图片,flash,那么浏览器就会一个个的请求,然后呈现。
例:用户访问东南大学主页 Http://www.seu.edu.cn/seu/welcome.htm,浏览器与服务器的信息交互过程如下:
(1)浏览器向DNS获取web服务器www.seu.edu.cn的IP地址:202.119.24.11
(2)浏览器与IP地址为202.119.24.11的服务器进行TCP连接,端口为80;
(3)浏览器执行HTTP协议,发送GET /seu/welcome.htm 命令,请求读取该文件;
(4) www.seu.edu.cn服务器返回/seu/welcome.htm文件到客户端;
(5)释放TCP连接;
(6)浏览器解释/seu/welcome.htm文件内容,并显示该文件表示的页面。
发这篇文章目的是:了解mozilla网络线程如何和web服务器交互!