前端问题总结

一、从输入 URL 到页面展示,这中间发生了什么

答:

1、浏览器进程接收用户输入的URL,然后将其URL请求发送给网络进程
2、网络进程接收到URL请求之后,便发起网络请求,然后服务器返回HTTP数据到网络进程
3、网络进程解析HTTP出来响应头数据,并将其转发给浏览器进程
4、浏览器接收到网络进程的响应头数据之后,发送 “CommitNavigation”消息到渲染进程,发送
CommitNavigation时会携带响应头,等基本信息
5、渲染进程接收到CommitNavigation消息后,便开始准备接收HTML数据,接收数据的方式是直接
和网络进程建立数据管道
6、最后渲染进程向浏览器进程 返回“确认提交”消息,告诉浏览器进程,已经准备好接受和解析页面数据了
7、浏览器进程接收到“确认提交”消息后,更新浏览器界面状态 (此时页面为新链接,但标签图标处于加载状态)
8、同时当渲染进程“CommitNavigation”后,变开始解析和子资源加载,渲染完毕后,给浏览器进程发送消息
9、浏览器进程接收消息,页面加载完成(标签图标停止加载)

posted @ 2020-03-13 10:56  总是不停地吃吃吃  阅读(104)  评论(0编辑  收藏  举报