HTTP请求的整个过程
总体进行一个理解:
DNS解析—>TCP 连接—>浏览器发送http请求—>服务器响应请求—>浏览器解析html文件—>浏览器布局渲染
· DNS 解析:将域名解析成 IP 地址
· TCP 连接:TCP 三次握手
· 发送 HTTP 请求
· 服务器处理请求并返回 HTTP 报文
· 浏览器解析渲染页面
· 断开连接:TCP 四次挥手

1.DNS域名解析。
1) 首先会在浏览器DNS缓存中搜索是否有对应的IP映射(并且是有效的),如果找到的话,就调用该映射并且停止解析;如果没找到的话就执行第二步;
2)在操作系统DNS缓存中查找是否有对应的IP,如果有的就停止解析,否则就执行第三步;
3)查找本地系统 hosts 文件,在hosts文件中查找是否有对应的IP,如果有的话就停止解析,否则就向本地配置首选的DNS服务器发起域名解析的请求。
2.TCP连接。
TCP通过三次握手创建连接【保证数据传输的可靠性】,具体说一下三次握手的过程(此处就不细说了)。
3.客户端的浏览器向服务器发起http请求。【请求报文包括请求行、请求报头、空行、正文】在此不再详述
4.服务器对浏览器发过来的请求作以响应。【报文中 包括状态行、响应头部、空行、响应正文】在此也不详述(在这里常见的状态码要记住)
5.浏览器对HTML进行解析
客户端的浏览器收到服务器的响应之后就按照顺序一个一个地对HTML文件进行解析,构建DOM树,当解析到外部资源文件CSS或JS文件时,会对服务器发送请求,下载资源文件,如果下载的是CSS文件,浏览器会一边下载CSS文件,一边对后面的html文件进行解析,并且构建DOM树,如果下载的是JS文件,那么浏览器就停止对后面html文件的解析,此时就会出现JS页面阻塞的问
题。

HTTP(浏览器访问)请求的整个过程相关推荐

  1. 浏览器访问百度的整个过程

    浏览器访问百度的整个过程 1.主要先要解析出百度域名www.baidu.com所对应的ip地址(一个域名只对应一个IP地址,一个ip地址可对应多个域名) 1.先知道默认网关的mac地址(使用arp获取 ...

  2. 爬虫小白系列01期: 从李白杜甫,来看爬虫本质 、 浏览器访问网页原理 、 请求头的概念

    众所周知,爬虫的本质是,模拟浏览器打开网页,获取网页中我们需要的那部分数据. 那首先我们应该清楚,普通一般浏览器打开网页的流程和原理是怎样的? 根据生活经验,我们使用浏览器打开网页的步骤一般是这样的 ...

  3. python 模拟微信浏览器请求_用chrome模拟微信浏览器访问需要OAuth2.0网页授权的页面...

    现在很流行微信网页小游戏,用html5制作的小游戏移过来,可以放到微信浏览器中打开,关键是可以做成微信分享朋友圈的形式,大大提高游戏的传播,增强好友的游戏互动. 微信浏览器中打开网页游戏效果还不错,对 ...

  4. 从输入一个URL地址到浏览器完成渲染的整个过程

    从输入一个URL地址到浏览器完成渲染的整个过程 1. 浏览器地址输入URL并回车 2. 浏览器查找当前URL是否存在缓存,并比较缓存是否过期 3. DNS解析URL对应的IP DNS解析实际上就是寻找 ...

  5. 浏览器访问web服务器的图解和tomcat体系结构图

    浏览器访问web服务器: 注意:上图是以浏览器中访问主机为localhost,端口号为8080的votesystem这个web应用中的index.html资源文件为例. Tomcat体系结构: 注意: ...

  6. 课时3.浏览器访问网页原理(理解)

    浏览器访问网页原理(理解) 第一次打开IE6,发现系统自动生成了一个文件夹,所以我们可以得出这个文件夹必然和IE6有一定的关系 先删除Internet Cache下的所有文件夹,然后通过IE6打开百度 ...

  7. python爬虫模拟浏览器的两种方法_python爬虫模拟浏览器访问-User-Agent过程解析

    这篇文章主要介绍了python爬虫模拟浏览器访问-User-Agent过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 模拟浏览器访问-Use ...

  8. http请求过程_“HTTP请求的整个过程”与它引出了整个计算机网络知识图谱(一)...

    小猿的某同事不甘于现状,近期到处投简历面试.某天,小猿只见某灰头土脸.唉声叹气,于是小猿本着看热闹不嫌事儿大的心态,一脸坏笑凑上去问:"大佬,最近面试咋样,是不是都拿好几个offer了~^_ ...

  9. 使用IE浏览器访问JSP界面,当使用断点时相关的样式会显示,当不适用断点时,相关的样式不会显示

    问题描述:使用IE浏览器访问JSP界面,当使用断点时相关的样式会显示,当不适用断点时,相关的样式不会显示 解决方法:如果JSP页面对应的JS代码块有Ajax请求,可能需要将其请求改为异步,即async ...

最新文章

  1. 山景智能创始人黄勇:银行要从数据智能转向业务智能,今天的金融服务难以支撑未来 | MEET2021...
  2. create maven android project
  3. 大话设计模式—桥接模式
  4. 数据库------事务
  5. cad细等线体不显示_CAD图纸乱码、钢筋符号不显示解决办法(内含万能字体)
  6. charles源码分析
  7. 19. Python 类的重写   类的私有变量和私有方法
  8. Android热修复技术初探(三):动态加载外部资源
  9. 大数据:技术与应用实践指南
  10. window7 右键菜单显示-》在此处打开命令窗口
  11. PDF阅读器阅读论文跳转到参考文献,如何返回
  12. 论文查重率这么高,是由什么原因造成的?
  13. javaUDP逐步实现多线程发送和接收消息
  14. 批量手机号码状态检测【已失效】
  15. 《走近心理学》第二章之心理学的生物学理论
  16. 我的十年 谨以此文迎接我即将到来的三十而立
  17. 在计算机中常见的硬盘接口类型有,硬盘接口类型主要有哪几种?
  18. ubuntu22 使用todesk被远程控制时显示黑屏或者白屏
  19. 云原生技术赋能联邦学习
  20. 前端(Javascript) + JAVA 服务端如何处理 HTTP 断点续传

热门文章

  1. Matlab的证书失效解决办法
  2. 诗歌《忆水湖》(本人原创)
  3. 这10本硬核技术书,带你读懂5G、物联网和边缘计算,玩转元宇宙
  4. android udp广播 权限,安卓UDP广播/多播注意事项
  5. Element的Notification通知自定义样式手动关闭直接渲染带html格式的字符串
  6. 如何用计算机记英语词汇,计算机英语背单词技巧
  7. 轨迹预测Leapfrog Diffusion Model for Stochastic Trajectory Prediction
  8. B1088 三人行(python)
  9. 【flash基础】简单的 打飞机小游戏
  10. (转)面试趣味智力问题收集与整理