分享好友 最新动态首页 最新动态分类 切换频道
前端面试必备——从输入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 的元素,将不会被放入其中。
最新文章
推荐三款小说生成工具:一键生成故事与的软件,轻松创作独特作品
在如今这个信息爆炸的时代文学创作不再是少数人的专利。无论是小说家、家还是业余创作者都可借助科技的力量轻松打造出属于本人的独到作品。小说生成工具的出现为广大创作者提供了无限的可能性,只需一键操作,就能生成故事大纲、人物关系甚
ChatGPT中文版网页
ChatGPT中文版网页是一款十分好用的ai聊天软件,在ChatGPT中文版网页中,软件涵盖了多种智能聊天功能,多元化的服务,满足各用户不同需求,用户可以随意提问题,流畅回复,感受智能的对话服务。软件内存很小,不会占用手机太多的内存空间,
开服即被挤爆,AI新拐点来临!
昨日,OpenAI视频生成模型Sora正式版终于发布!此次发布的Sora Turbo,为原始Sora模型的全新高端加速版本,用户不仅可以通过文字提示生成视频,还能将静态图片转化为动态视频,甚至可以对现有视频进行创意改编。作为OpenAI“王炸”产品,So
【经验分享】含多酚多糖植物材料RNA的提取方法
观察与问题笔者在2023年10月至2024年6月跟随师兄对番茄中某转录因子进行研究,研究过程中笔者提取了模式番茄(Solanum lycopersicum)多个生长阶段中各器官RNA超60组。在使用TIANGEN公司RNAprep Pure多糖多酚植物总RNA提取试剂盒(离心柱型
生成式AI新时代:OpenAI、DeepMind与端侧智能的巨变
随着生成式AI技术的不断演进,我们见证了多个重量级产品和平台的重大进展。从OpenAI发布的新模型到DeepMind的视觉语言模型,再到国内端侧智能公司的融资动态,AI领域正迎来一场竞争与创新的热潮。OpenAI的猎户座模型泄露最新消息显示,Open
SEO网站关键词排名优化,提升网站流量与转化率的秘籍解析,揭秘SEO,关键词优化秘籍,助你网站流量与转化率双提升
SEO网站关键词排名优化秘籍解析:通过深入分析关键词策略、优化网站结构和内容质量,有效提升网站在搜索引擎中的排名,从而增加流量和转化率。 *** 包括合理布局关键词、优化页面加载速度、增强用户体验等。掌握这些技巧,助力网站在竞争中
成品网站1.1.719:全流程智能建站工具,让网站优化和流量提升一步到位!
网站制作总是让人望而却步?技术门槛、设计难度、时间成本,这些问题让许多人迟迟未能实现自己的建站计划。然而,一款名为成品网站1.1.719的工具正在悄然改变这一切。它通过简洁的设计和强大的功能,为用户带来了全新的建站体验。不同于传统
谷歌浏览器苹果手机版
谷歌浏览器苹果手机版是针对苹果ios平台而推出的一款移动浏览器,其官方名称又叫做chrome手机浏览器,该软件的性能丝毫不比电脑版差,图片清晰无水印,而且信息很准确,没有其他不相关的内容;新版本更是加入了语音搜索功能、用户无需输入
第49章邪王追妻
  因为通过刚才破妄法眼的透视,王乐根本就没发现进入地下遗址空间的门户。《帝国之雪洗天下》第五卷《血色象牙塔》完。  王乐可不想把这大好时光浪费在等待上面,毕竟这个档口上还远远不是休息的时候。邪王追ࣹ
无需谷歌搜索,教你11个高级搜索技巧!
我是汤老师一个放纵不羁爱自由的人在这里我希望你们不受约束尽情嗨众所周知,谷歌搜索在中国无法使用,鉴于国内的搜索引擎搜索命中率的问题,很多用户在怀念谷歌,也有很多用户仍然在通过各种方式使用谷歌,在大多数情况下用户都是通过基本
相关文章
推荐文章
发表评论
0评