前端——理解一次完整HTTP请求的步骤

(一)一次完整HTTP请求过程

在浏览器输入地址,浏览器与访问服务器之间会完成一次http请求,步骤如下:

  1.DNS域名解析为服务器主机的IP地址;

  2.根据IP,找到对应的服务器,发起TCP三次握手;

  3.建立TCP连接后发起HTTP请求;

  4.服务器得到HTTP请求,浏览器得到HTML代码;

  5.浏览器解析HTML代码,并请求HTML代码中的资源(如js,图片,css,先得到代码才能去找这些资源);

  6.浏览器对页面进行渲染并展示给用户;

在上述过程,需注意:

  1.DNS域名解析采用的是递归查询的方式,过程是,先去找DNS缓存>缓存找不到就去找根域名服务器>根域名又会去找下一级>递归查找之后,找到了,给web浏览器。

  2.为什么HTTP协议要基于TCP来实现?  TCP是一个端到端的可靠的面向连接的协议,HTTP基于传输层TCP协议不用担心数据传输的各种问题(当发生错误时,会重传)。

  3.最后一步浏览器是如何对页面进行渲染的?  

    a)解析html文件构成 DOM树;

    b)解析CSS文件构成渲染树;

    c)边解析,边渲染 ;

    d)JS 单线程运行,JS有可能修改DOM结构,意味着JS执行完成前,后续所有资源的下载是没有必要的,所以JS是单线程,会阻塞后续资源下载;

(二)前端之HTTP协议

  参考:https://www.cnblogs.com/taostaryu/p/9076789.html

 

posted @ 2019-11-01 15:41  半忧夏  阅读(2734)  评论(0编辑  收藏  举报