1、一个从浏览器的地址栏输入url到页面显示,经历了哪些过程?
1、DNS解析,找到IP
2、TCP连接(三次握手)
3、浏栏器向服务器发送连接请求
4、服务器确认收到请求,做出响应
5、浏览器根据响应,解析与渲染,显示页面
6、断开连接
2、浏览器的架构图?浏览器是多进程吗?渲染引擎中主要有什么东西?
用户界面、浏览器引擎、渲染引擎(DOM树、CSS树) 多进程
进程:每打开一个选项卡,每个项目运行起来就是一个进程,一个进程可以有多个线程。 UI线程和JS线程互斥
3、浏览器想要把一张没有JS页面渲染出来,它是如何渲染的?
UI线程会把HTML渲染成DOM树,把CSS渲染成CSS树,DOM树和CSS树合成渲染树,渲染出页面
4、说一下什么是HTTP协议?
HTTP协议就是浏览器与服务器之间的一套通信规则(协议)
5、三次握手和四次挥手?发生在什么时候?为什么握手是三次,挥手是四次?
三次握手:发生在TCP连接时
1、浏览器向服务器发送连接请求
2、服务器确认收到连接请求,并向浏览器发送连接请求
3、浏览器确认收到请求
四次挥手:发生在断开连接时
1、甲方向乙方发送断开连接请求
2、乙方确认收到请求
3、乙方发送断开连接请求
4、甲方确认收到请求
由于在握手时可以直接连接,而在断开连接时,可能乙方给甲方发送数据没有玩,不能立即断开连接
6、写html标签时,应该注意什么?
1、HTML语法比较灵活,出错时不会提示,只是显示不出来。
2、对于双标签要有开始标签,也必须有结束标签,必须关闭。
3、标签可以层叠,但是不能交叉。
4、不区分大小写,我们常习惯于小写
7、常用的发起http请求的方式有哪些?
常用的有两种:get(从浏览器获取资源)、post(把自己的数据上传浏览器)