一个HTTP请求的生命周期

148 阅读1分钟

1.请求流程

image.png

  • (1) 浏览器获取输入的域名www.baidu.com
  • (2) 浏览器向DNS请求解析www.baidu.com的IP地址
  • (3) 域名系统DNS解析出百度服务器的IP地址
  • (4) 浏览器与该服务器建立TCP连接(默认端口号80)
  • (5) 浏览器发出HTTP请求,请求百度首页
  • (6) 服务器通过HTTP响应把首页文件发送给浏览器
  • (7) TCP连接释放
  • (8) 浏览器将首页文件进行解析,并将Web页显示给用户。

2.问题总结

疑问:html文件也是需要请求服务器返回的,为什么前端在开发过程中,并没有请求后端,也能在浏览器中打开页面呢?

理解:前端的html,css, js文件都是需要http请求才能拿到的,也需要建立TCP连接。 前端在开发项目的时候,虽然没有请求后端,但其实是发送了http请求的,因为在前端框架中vite给我们启动了一个开发服务器,所以前端在开发的时候就可以在本地实现浏览器渲染页面整个流程。

打包部署的时候,前端的代码及整个项目就是静态文件,是不用启动这个服务的。通过url中的路径去匹配请求应该去找前端静态文件还是去找server接口数据。(使用nginx代理)

比如:

/homepage 就是请求html页面。

/api就是请求数据接口。

这两个前缀是不能一样的。

参考连接:blog.csdn.net/ZeronGod/ar…