分享好友 最新动态首页 最新动态分类 切换频道
前端面试必备——从输入URL到浏览器展示网页的过程
2024-11-04 16:38

1、用户输入关键词,地址栏判断是搜索内容还是 url 地址

前端面试必备——从输入URL到浏览器展示网页的过程

  • 如果是搜索内容,会使用浏览器默认搜索引擎加上搜索内容合成url;
  • 如果是域名会加上协议(如 https)合成完整的 url。

2、然后按下回车。浏览器进程通过 IPC进程间通信把 url传给网络进程(网络进程接收到 url 才发起真正的网络请求)。

3、网络进程接收到 url 后先查找有没有缓存。(先检查强缓存,如果命中直接使用缓存资源,否则进入 DNS 解析)

  • 有缓存,直接返回缓存的资源。
  • 没有缓存。(进入真正的网络请求)。首先获取域名的 IP,系统会首先自动从 hosts 文件中寻找域名对应的 IP 地址,一旦找到,和服务器建立 TCP 连接;如果没有找到,则系统会将网址提交 DNS 域名解析服务器来进行 IP 地址的解析。

4、利用 IP 地址和服务器建立 TCP 连接(3 次握手)

5、建立连接后浏览器构建数据包(包含请求行,请求头,请求体,并把该域名相关 cookie 等数据附加到请求头),然后向服务器发送请求消息

注意:请求体只有在 方法下存在,常见的场景是表单提交

6、服务器接收到消息后根据请求信息构建响应数据(包括响应行,响应头,响应正文).应用层HTTP解析请求头和请求体

  • 如果需要重定向,返回HTTP响应数据的状态码301或者302,同时在请求头的Location字段中附上重定向地址,浏览器会根据code和Location进行重定向提作;
  • 如果不是重定向,首先服务器会根据请求头中的的值来判断请求的资源是否被更新,如果没有更新,就返回304状态码,告诉浏览器之前的缓存还可以使用,不需要返回新数据,否则,并且如果浏览器需要缓存数据的话,就在相应头中加入字段:
    响应数据又顺着应用层——传输层——网络层——网络层——传输层——应用层的顺序返回到网络进程

7、数据传输完成,TCP四次挥手断开连接。如果浏览器或者服务器在HTTP头部加上,TCP就一直保持连接,这样再次传输时不需重新建立连接,提高资源加载速度

8、网络进程接收到响应数据后进行解析,根据响应头中的来判断响应数据的类型,如果是,就将该请求交给下载管理器;如果是,就通知浏览器进程将获取的文档进行渲染

在渲染引擎内部有个 HTML解析器负责将 HTML 字节流转换为 DOM 结构,因为浏览器不能解析 HTML,故会先基于 HTML 编码转换为单个字符,通过分词器将字节流转换为 Token,每个 token 都有自己独特的含义和规则集;然后进行词法分析,将 token 转为对象,这些对象分别定义他们的属性和规则之后进行 DOM 构建。

  • 解析 HTML 构建 DOM 时,遇到Javascript 会被阻塞(当没有 async 和 defer 属性时)
  • Javascript 执行会被 CSSOM 构建阻塞,也就是说,Javascript 必须等到 CSSOM 构建完成后才会执


为了构建渲染树,浏览器主要完成了以下工作:

  • 从 DOM 树的根节点开始遍历每个可见节点
  • 对于每个可见的节点,找到 CSSOM 树中对应的规则,并应用它们
  • 根据每个可见节点以及其对应的样式,组合生成渲染树


第四步是在渲染树上运行布局以计算每个节点的几何体。

  • 渲染树会表示显示哪些节点以及其他样式,但是不表示每个节点的尺寸、位置等信息
  • 布局是确定呈现树中所有节点的宽度、高度和位置信息:
  • 注意:布局树只包含可见元素,对于 head 标签和设置了 display:none 的元素,将不会被放入其中。
最新文章
宅家新姿势—威联通NAS安装套件版Emby搭建家庭影音服务器
创作立场声明:最近一直在折腾威联通的NAS,也折腾出了一些小心得,网上关于威联通系统的相关教程较少,所以新的一年,准备开一个新系列,写写威联通系统的介绍、配置技巧等,是分享也是记录。在阿文菌等各位大佬的影响下开始研究Emby这款
【原创】解锁社交媒体SEO:获取海量流量的密钥
  在当今数字化时代,社交媒体已成为人们日常生活的重要组成部分,同时也是企业和个人获取流量、提高品牌知名度的重要渠道。社交媒体SEO(搜索引擎优化)作为一种优化社交媒体平台的方法,旨在提高网站在搜索引擎和社交媒体上的排名和流量
AI文案创作神器:让你的营销更有感染力
在快节奏的互联网时代,营销信息的传递速度超乎想象,但要让你的内容在众多信息中脱颖而出,并非易事。一篇优秀的营销文案不仅仅要传达产品信息,更要打动人心,引发共鸣。而今,AI技术的崛起为文案创作注入了新的活力,句无忧——这款集违
如何有效利用百度购买关键词排名提升网站流量
青衣网络-www.ra0.cn:如何有效利用百度购买关键词排名提升网站流量目录:1. 理解百度关键词购买机制2. 确定目标关键词的策略3. 关键词竞价与优化技巧4. 监控和调整关键词表现5. 避免常见错误和陷阱6. 结语正文:理解百度关键词购买机制在
经验:百度收录规则与机制:运营专家分享亲身经历,提升收录率的秘诀
随着信息化时代的飞速发展,百度收录成为了每一位内容创作者难以避免的难题。本人身为一名具有丰富经验的运营专家,深谙百度收录规则与机制。今日在此,愿将亲身经历与众共享,期盼能为同业者带来有益的启示。百度收录的意义与现状首先要明
微信视频号链接地址怎么提取?4套方法都能用。
3. 点击链接中的保存视频按钮即可将视频保存到您的设备,或者直接提取视频号视频的链接。建议:选择在线视频下载器时,请确保选择合法可靠的网站,以避免安全风险。同时,在选择视频格式和质量时,根据您的需求考虑下载速度和存储空间。方
最新Q/W防洪跳转页面/微信小程序跳转到未备案域名
wwthyn.lanzoup.com/iJJ3f1hpcq2j使用教程: 1.上传插件网站根目录 2.打开khyy文件夹 修改index.php文件中的链接(url前面的0是跳转时间,可自行设置) echo 'html head     meta http-equiv="refre
苹果cms模板_我的主题网【第二十五套】精简宽屏大气苹果CMSv10模板DIY系列拆分版...
苹果cmsv10下载地址:https://www.mytheme.cn/maccms/243.html这款苹果cmsv10模板依然是DIY系列样式,优化重构了前期同系列的不足,添加了更流行的元素和设计风格,这是我们完全自主开发没用任何css框架且只针对影
SEO高手秘籍,网站搜索引擎脱颖而出之道
SEO优化高手通过深入理解搜索引擎算法,精准关键词研究,优化网站结构、内容和外部链接,提升网站质量和用户体验,从而让你的网站在搜索引擎中排名靠前,吸引更多流量。掌握这些技巧,让你的网站脱颖而出。探秘SEO优化基本原理精通SEO优化
相关文章
推荐文章
发表评论
0评