1.简述从输入url到页面渲染的过程
--获取url,解析获得ip地址,如果hosts有缓存则优先读取缓存
--TCP三次握手,建立连接
--客户端发送HTTP请求
--服务端接受请求返回数据(响应)
--浏览器读取数据,进行渲染
--TCP四次挥手
2.TCP三次握手
--浏览器发送给服务器,提醒服务器将要发送请求
--服务器发送给浏览器,告知浏览器已知此消息
--浏览器发送给服务器,发送请求
3.TCP四次挥手
--浏览器发送给服务器,请求报文发送完
--服务器发送给浏览器,请求报文接受完
--浏览器发送给服务器,响应报文发送完
--服务器发送给浏览器,响应报文接受完
4.为什么是三次握手
--如果是两次握手,就不能保证服务器接受完全部的请求,有可能还发送请求服务器就已经返回响应。
5.http和https的区别
--https需要证书
--http是明文传输,https则是具有安全性的ssl加密传输协议
--使用的端口号不同,http:80 https: 443
--http链接很简单,无状态,https是由ssl+httpgoujian的可进行加密传输,身份证的网络协议,比http协议更安全
6.为什么要缓存
减少数据传输,对服务器压力小,优化性能
7.什么是强制缓存和协商缓存
--强势缓存是指http第一次请求资源的时候,在http响应头中设置一个有效时间,规定在这个有效时间内再次请求资源会优先使用浏览器缓存。(常见的响应头字段有Cache-Control和Expires)
--协商缓存是指通过http响应头中的etag或者Last-Modified等判断服务器上的资源是否修改,如果一致则表示没有修改,资源会从浏览器缓存中获取,如果不一致则表示修改了,需要重新向服务器发送请求获取资源。
8.WebSocket的实现和应用
1.什么是websocket?
--websocket是一种html5协议,支持持久连续,区别于http协议的不支持持久性协议。
2.websocket有什么优点?
--在http1.0协议中的生命周期是通过Request来界定的,一个Request对应一个response,而http1.1协议加以优化,一个http可以发送多个request。但是注意:response不能主动发起
9.http请求方式,head方式
1.head:类似于get请求,不过返回的响应中没有内容,用户获取报头
2.options:允许客户端查看服务器的性能,比如说服务器支持的请求方式等等
10.Cookie、sessionStorage、localStorage的区别
1.共同点:都保存在浏览器中,同源的
2.Cookie:每次请求都会发送给服务器,,存储容量小
sessionStorage:是一种会话级的数据存储,当浏览器窗口关闭,他就会自动销毁。
localStorage:在所有同源的窗口中都是共享的,并且不会随着浏览器关闭失效。