前端面试题之——网络部分
一 面试题汇总
- 页面从输入URL到展现发生了什么
- cookie和session的异同
- HTTP和HTTPS的区别
- ssl加密使用了那种算法,如何加密
- TCP三次握手的过程,为什么是三次而不是两次或者四次?
- TCP的四次挥手
- HTTP报文的格式,传输中以何种方式传输
- 常见的HTTP头部
- HTTP状态的简要分类
- HTTP状态码101、200、301、302、304的具体含义
- 301和302的区别
- 简要介绍一次302的过程
- HTTP2.0的简要介绍
- 用户登陆过程的简要说明,如何判断用户是否登录?
- tcp和udp的区别
- udp的阻塞机制,如何处理
- 简要介绍一下socket协议
- get和post有什么区别?什么时候用get,什么时候用post
- 什么是正向代理?什么是反向代理?
- 介绍一下HTTPS的连接过程
- 和缓存有关的请求头有哪些?优先级是怎样的?
- 介绍一下DNS的查找过程?
- http连接性能优化,长连接,keep-alive
- https的详细过程,使用的加密算法,是对称加密算法还是非对称加密算法。md5、SHA、AES分别是对称加密的还是非对称加密的
- https没有大规模应用的原因
- http2有哪些新特性?
- 端口号的作用是什么?
二 面试题解答(仅供参考)
2.1 页面从输入URL到展现发生了什么
1 | 输入URL之后,需要寻找到这个url域名的服务器IP,为了找到这个IP,浏览器首先会寻找缓存, |
2.2 cookie和session的异同
1 | cookie和session都可以用来存储用户信息, |
2.3 HTTP和HTTPS的区别
1 | 首先HTTP和HTTPS的默认端口号就不一样,HTTP的默认端口号为80,HTTPS的默认端口号为443, |
2.4 ssl加密使用了那种算法,如何加密
1 | SSL(Secure Sockets Layer)和其继任者TLS(Transport Layer Security)是用于在互联网上安全传输数据的协议。SSL/TLS 协议使用了多种加密算法来保护数据的机密性和完整性。以下是 SSL/TLS 协议中常用的加密算法: |
2.5 TCP三次握手的过程,为什么是三次而不是两次或者四次?
1 | 第一次握手:客户端发送一个syn(同步)包(syn=x)给服务器,进入SYN_SEND状态,等待服务器确认 |
2.6 TCP的四次挥手
1 | 第一次:主动关闭方发送一个FIN包,用来关闭主动关闭方到被动关闭方的数据传送,也就是告诉另一方我不再发送数据了,但此时仍可以接收数据 |
2.7 HTTP报文的格式,传输中以何种方式传输
1 | HTTP报文分为三个部分,起始行、首部和主体,其中起始行和首部以一个回车和换行符分隔, |
2.8 常见的HTTP头部
1 | 可以将HTTP首部分为通用首部、请求首部、响应首部、实体首部,通用首部表示一些通用信息, |
2.9 HTTP状态的简要分类
1 | 可以按照HTTP状态码的第一个数字分类, |
2.10 HTTP状态码101、200、301、302、304的具体含义
1 | 101:切换协议 |
2.11 301和302的区别
1 | 301 和 302 都是 HTTP 状态码,用于重定向请求。它们之间的主要区别在于重定向的类型和行为: |
2.12 简要介绍一次302的过程
1 | 当客户端(通常是浏览器)发送一个 HTTP 请求到服务器,并且服务器响应的状态码是 302 Found 时,将触发一次重定向过程。下面是一次 302 重定向的简要过程: |
2.13 HTTP2.0的简要介绍
1 | 用户请求一个url,服务器处理这个url,设置这个url需要重定向,返回用户一个302响应, |
2.14 用户登陆过程的简要说明,如何判断用户是否登录?
1 | 判断用户是否登录的方法通常是检查客户端中存储的登录凭证是否存在或者是否有效。 |
2.15 tcp和udp的区别
1 | TCP面向连接的、提供可靠传输的协议,而UDP则是面向非连接。 |
2.16 udp的阻塞机制,如何处理
1 | 在使用 UDP 进行通信时,由于其不提供阻塞机制,因此需要应用程序自行处理以下几个方面: |
2.17 简要介绍一下socket协议
1 | Socket 协议(套接字协议)是一种用于网络通信的编程接口或者通信协议, |
2.18 get和post有什么区别?什么时候用get,什么时候用post
1 | get用来请求数据, |
2.19 什么是正向代理?什么是反向代理?
1 | 正向代理就是客户端向代理服务器发送请求,并且指定目标服务器,之后代理向目标服务器转交并且将获得的内容返回给客户端。比如翻墙 |
2.20 介绍一下HTTPS的连接过程
1 | 1-客户端发起连接请求: |
2.21 和缓存有关的请求头有哪些?优先级是怎样的?
1 | 和缓存有关的请求头有Cache-Control、If-Match、If-None-Match、If-Modified-Since、If-Unmodified-Since, |
2.22 介绍一下DNS的查找过程?
1 | 1-本地缓存查找 |
2.23 http连接性能优化,长连接,keep-alive
1 | HTTP 连接性能优化是提高 Web 应用性能的重要手段之一。 |
2.24 https的详细过程,使用的加密算法,是对称加密算法还是非对称加密算法。md5、SHA、AES分别是对称加密的还是非对称加密的
2.25 https没有大规模应用的原因
1 | 1-成本和性能问题:在 HTTPS 出现之初,采用 SSL/TLS 加密传输会增加服务器的计算成本和传输延迟, |
2.26 http2有哪些新特性?
1 | HTTP/2 是 HTTP 协议的下一代版本,旨在提高网站性能和用户体验。它引入了许多新特性和改进,主要包括以下几点: |
2.27 端口号的作用是什么?
1 | 作用是区分服务类别和同一时间进行多个会话 |
三 参考
- FE-Interview—网络部分