合成完整url
浏览器进程分析用户在地址栏的输入内容,合成带搜索关键字的搜索地址(加上协议)
查找缓存+发起网络请求
通过IPC(进程间通信)机制,网络进程拿到了url请求,会先查找缓存,有缓存:直接返回数据给浏览器;没有缓存:开始以下流程:
根据DNS,查找到ip地址
等待TCP队列
建立TCP、TLS(如果是https协议)连接
构建请求行、请求头、附加上cookie等信息
发起请求
服务器处理请求
服务器响应请求给网络进程
网络进程接收到内容后会状态码进程进行解析(301、302、200等)
301、302:浏览器根据location字段重定向到其它地址
200:进一步根据content-type做不同的处理
准备渲染进程
准备好后还不能立即进入文档解析状态,因为此时文档还在网络进程中。
提交文档
a.浏览器进发送提交文档消息给渲染进程
b.渲染进程开始和网络进程建立通道,传输数据,数据传输完毕后会发送确认提交的消息给浏览器进程
c.浏览器进程收到通知后,开始更新页面状态:前进后退历史状态、地址url
渲染阶段
一旦文档被提交,渲染进程便开始页面解析和加载子资源