浏览器请求资源的流程分析

我们都知道浏览器是要向服务器发出请求资源,而服务器向浏览器返回响应

服务器一般常用的有tomcat,那么我们就以tomcat为列子,首先我们需要知道tomcat服务器打开后下面几个文件夹是干什么

tomcat服务器中的文件介绍

JavaWeb程序/应用/工程目录结构

webapps 最为主要,是存放浏览器访问服务器时,服务器返回的静态页面(html,css等)以及要一些java代码。那么静态页面可以直接放入到webapps文件下,那么类似于java代码等该怎么存放呢?而java代码则引发出了一个新的问题,那么就是只要java代码就会有一些配置文件或者jar包,像这类信息该如何存放呢?

所以就有了要在webapps下创建一个WEB-INF目录,用来存放这些jar包或其xml等配置文件,而Lib目录就用来存放java代码或其jar包等之类的

浏览器请求资源的流程分析步骤如下:

在具备上述一些必备的知识点后,此刻我们才能引出浏览器请求资源的流程分析,以案例我们向浏览器发出一个请求 http://www.htp.com:8080/test/tests.xml

(1)域名解析:浏览器会先将localHost进行一个解析,要先知道localHost的IP地址是什么?

(2) 所以浏览器会先通过本地的host的文件来查找localHost的IP地址是多少?(host的文件地址所在windows/System32/dirves/etc/host)

(3)Host文件如果查找到后,那么此刻浏览器就会将其查找到的IP地址以及端口号,文件目录等向其服务器发出http请求

(4)服务器解析:服务器接收后,也会先进行一个解析,解析web应用(每个web应用其就是一个文件夹)

(5)接着服务器会再次解析,解析其想要访问的是某个资源(也就是文件夹里具体的某个文件)

(6)服务器查找文件目录,并获取到该资源

(7)将其资源以http响应发出给浏览器

(8)浏览器解析:浏览器得到后文件后,会将其解析并渲染显示到其页面

注意:因一个请求只能有一个响应,那么在服务器返回给浏览器的html资源后,是一个文本资源。

浏览器发现其文本内有一个图片,那么就需要再次发出请求,所要图片资源,而服务器此时会将图片资源发出

所以看图片就得出,浏览器其实发出了三次请求,但最后一个请求是url地址旁边的一个图标,没是那么作用,所以就是两次请求,符合一个请求一个响应

浏览器解析返回的响应文本,根据其响应文本中的信息来判断是否要再次发出新的请求

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
浏览器发送请求到后端服务器再到浏览器的具体流程如下: 1. 用户在浏览器中输入 URL 地址或者点击页面上的链接。 2. 浏览器解析 URL 地址,获取服务器的主机名(例如:www.example.com)和端口号(默认为80)。 3. 浏览器通过 DNS(域名系统)将主机名解析为对应的 IP 地址。 4. 浏览器建立与服务器的 TCP(传输控制协议)连接。 5. 浏览器向服务器发送 HTTP(超文本传输协议)请求,包括请求方法(GET、POST等)、请求头(例如用户代理、Cookie等)和请求正文(例如表单数据)。 6. 服务器接收到请求后,根据请求的路径和方法,调用相应的处理程序(例如一个后端接口或者一个静态文件)。 7. 服务器处理完请求后,将响应结果封装成 HTTP 响应,包括状态码(例如200表示成功)、响应头(例如内容类型、缓存策略等)和响应正文(例如HTML、JSON等)。 8. 服务器将封装好的 HTTP 响应发送回浏览器。 9. 浏览器接收到响应后,根据响应头中的内容类型进行解析,并将响应正文渲染到页面上。 10. 如果响应中包含其他资源(例如图片、CSS、JavaScript文件等),浏览器会根据资源的 URL 发送额外的请求,重复上述流程,直到页面中的所有资源都加载完毕。 11. 浏览器关闭与服务器的 TCP 连接。 这是一个简化的描述,实际的流程可能会涉及更多细节和步骤,例如缓存、HTTPS 安全连接等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值