
获得徽章 0
- 2021.03.23 - 记录腾讯暑期实习生一面 (被虐的问题)
- 以下问题不关乎顺序(面试官是各种模块提问的)
- !!以下答案是个人理解和学习,若有错误或改进!各位大大提点一下呀!
1. 浏览器如何缓存文件(如JS/Css)
- 通过Http的强缓存或协商缓存
- 若命中则直接读取浏览器中缓存的文件
2. Https的连接步骤
- 1. 客户端发起https连接,请求连接
- 2. 服务端发送证书(私钥加密的密文只有公钥才能解开;公钥加密的密文只有私钥才能解开。)
- 3. 客户端验证服务端发来的证书,并生成随机数加密生成握手信息
- 4. 服务端接收随机数加密的信息,并解密得到随机数,验证握手信息是否被篡改。
- 5. 客户端验证服务端发送回来的握手信息,完成握手
3. Https的SSL加密算法是对称还是非对称
- HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。
4. 为什么会出现对称或非对称的情况
- 非对称加密的加解密效率是非常低的,而 http 的应用场景中通常端与端之间存在大量的交互,非对称加密的效率是无法接受的。
- 因此内容传输使用对称加密,证书验证使用非对称加密。
5. CDN的原理
- 由于用户访问源站业务有性能瓶颈,通过cdn技术把源站的内容缓存到多个节点。用户向源站域名发起请求时,请求会被调度至最接近用户的服务节点,直接由服务节点直接快速响应,有效降低用户访问延迟,提升可用性。
6. 本地是如何找到最近的CDN上
- 鹅鹅鹅鹅鹅
7. cros为什么可以进行跨域(找不到答案,现在理了理,说下个人的见解吧!大大们有知道的,吱呼吱呼下呀)
- 浏览器在进行复杂请求时,会先发送一个预请求OPTIONS。
- OPTION请求有对应的各种跨域所需的内容作为检测。
- 若验证成功了,才进行数据的请求连接
(太多了,剩下的问题放在评论区)
(反正!还是要了解原理,面试官会提问深入并询问原理。)展开245