首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
蒙古大夫
重庆邮电大学 销售
关注
已关注
取消关注
@阿珊和她的猫:
前端面试必备 | 计算机网络篇(P1-16)
文章目录 什么是HTTP?它的工作原理是什么?它的请求和响应内容是什么? HTTP和HTTPS有什么区别?如何实现HTTPS? 解释一下HTTP请求方法GET和POST的区别。 什么是Cookie?它在计算机网络中的作用是什么? 什么是Session?如何在前端实现基于Session的身份验证? 对称加密和非对称加密是什么,如何使用? 什么是TCP/IP协议?它在计算机网络中的作用是什么? 解释一下DNS是什么,它的作用是什么? 什么是RESTful API?它与传统的API有什么不同? 说一下OSI七层模型? TCP和UDP的区别是什么? 解释一下浏览器缓存,它的优点和使用场景是什么? 什么是CDN?它在前端性能优化中的作用是什么? 说下TCP三次握手,四次挥手? 浏览器输入网址后执行的过程? 说说你对计算机网络模型的理解 1. 什么是HTTP?它的工作原理是什么?它的请求和响应内容是什么? HTTP是超文本传输协议(Hypertext Transfer Protocol)的缩写,它是一种用于在Web上发送和接收超文本(如HTML)的应用层协议。 HTTP的工作原理是基于客户端-服务器模型。一般情况下,客户端是指用户使用的浏览器,服务器则是存储网站内容的远程主机。 下面是HTTP的基本工作流程: 客户端发起HTTP请求:浏览器向服务器发送HTTP请求,包括请求的资源路径、请求方法(如GET、POST等)和其他可选的请求头字段(如Cookie、User-Agent等)。 服务器处理请求:服务器接收到客户端请求后,根据请求的资源路径和方法进行处理,执行相应的逻辑操作。 服务器返回HTTP响应:服务器生成HTTP响应,包括响应状态码(如200表示成功,404表示资源未找到等),响应头字段(如Content-Type、Content-Length等)和响应体(即请求的资源内容)。 客户端处理响应:浏览器接收到服务器的HTTP响应后,根据响应内容进行相应的处理,如解析HTML、渲染页面等。 HTTP请求的内容包括请求行、请求头和请求体。 请求行包含请求方法、URL路径和HTTP协议版本。 请求头包含附加的信息,如请求的Host、User-Agent、Cookie等。 请求体则是一些需要在请求中携带的数据,例如在POST请求中传递的表单数据。 HTTP响应的内容包括响应行、响应头和响应体。响应行包含HTTP协议版本、响应状态码和相应的状态信息。响应头包含一些附加的信息,如响应的Content-Type、Content-Length等。响应体则是服务器返回的实际内容,如HTML文档、图片、视频等。 通过HTTP,客户端和服务器可以进行通信并交换超文本内容,实现了Web中的数据传输和交互。 2. HTTP和HTTPS有什么区别?如何实现HTTPS? HTTP(Hypertext Transfer Protocol)和HTTPS(Hypertext Transfer Protocol Secure)是用于在客户端和服务器之间传输数据的协议,它们有以下区别: 安全性:HTTP是明文传输协议,数据传输过程中不加密,因此存在安全风险。HTTPS通过使用SSL(Secure Sockets Layer)或TLS(Transport Layer Security)协议进行加密通信,确保数据在传输过程中的机密性和完整性,提供更高的安全性。 端口号:HTTP使用默认端口80进行通信,而HTTPS使用默认端口443。 证书验证:为了建立HTTPS连接,服务器需要使用SSL/TLS证书来验证其身份。客户端会验证该证书的有效性和可信度,确保与正确的服务器进行通信。这增加了对服务器身份的认证。 实现HTTPS的步骤如下: 生成和获取证书:需要通过证书颁发机构(CA)购买或获取SSL/TLS证书。证书中包含公钥和相关信息。你可以自己生成自签名证书进行测试,但浏览器会警告访问者证书不受信任。 配置服务器:服务器需要安装证书,并配置相应的加密套件和密码算法,在配置中指定使用HTTPS的端口号(通常是443)。 开启HTTPS:在服务器的配置文件中启用HTTPS协议(如Apache的配置文件httpd.conf或Nginx的配置文件nginx.conf),设置SSL/TLS证书的路径和配置参数。 重启服务器:在完成配置后,需要重启服务器以使更改生效。 实现HTTPS过程还涉及到数字证书的管理和维护,包括证书的更新和续期。此外,为了提供更高的安全性,可以配置HTTP到HTTPS的跳转,并实施其他安全措施,如HSTS(HTTP Strict Transport Security)。 请注意,HTTPS的实现可能略有不同,具体取决于你使用的服务器软件和配置方式。根据不同的服务提供商、服务器类型或工具,可以参考相关文档或指南来获取更详细的配置信息和步骤。 3. 解释一下HTTP请求方法GET和POST的区别。 HTTP请求方法GET和POST是两种常见的请求方法,它们在使用方式和作用上有一些区别。 GET请求: GET方法用于从服务器获取资源,通常用于请求获取页面、图片、文档等内容。 GET请求的参数会附加在URL的查询字符串中,并以键值对的形式传递,例如:http://example.com/resource?key1=value1&key2=value2。 GET请求具有幂等性,即多次发送相同的GET请求,不应对服务器产生副作用,只是获取相同的响应。 GET请求参数的长度有限制,不适合传递大量数据。 POST请求: POST方法用于向服务器提交数据,通常用于提交表单、上传文件等操作。 POST请求的参数会包含在请求体中,并以键值对的形式传递。参数不会直接暴露在URL中,因此相对于GET方法更安全。 POST请求可以传递大量数据,没有像GET方法的参数长度限制。 POST请求不具有幂等性,即多次发送相同的POST请求,可能对服务器产生副作用,例如重复提交订单。 总结: GET方法用于获取资源,参数附加在URL中,通常用于无副作用的读取操作。 POST方法用于提交数据,参数包含在请求体中,通常用于有副作用的写入操作。 GET方法适合获取少量数据,POST方法适合传递大量数据。 GET请求可以被缓存和收藏,POST请求一般不会被缓存。 需要根据具体的场景和需求选择适合的请求方法。 4. 什么是Cookie?它在计算机网络中的作用是什么? Cookie是计算机网络中的一种机制,用于在客户端和服务器之间存储和交换信息。它是由服务器发送给客户端的小型文本文件,在客户端的浏览器中存储,并在每次客户端向服务器发送请求时通过HTTP头部信息传递给服务器。 Cookie在计算机网络中的主要作用如下: 会话管理:Cookie常用于跟踪用户会话。当用户通过浏览器与服务器进行交互时,服务器可以创建一个唯一的标识符(称为会话ID)并将其存储在Cookie中。随后,浏览器在后续的请求中将Cookie自动包含在HTTP头部中,使服务器能够识别用户并维护与其关联的会话状态,如登录状态、购物车内容等。 状态保持:Cookie可以在客户端存储一些状态信息,在不同请求之间传递,以维持状态。例如,网站可以使用Cookie来记录用户的偏好设置或对用户进行个性化处理。 跟踪和分析:通过将唯一标识符(如用户ID)存储在Cookie中,服务器可以追踪和分析用户的行为和访问模式。这对于统计分析和广告跟踪等方面是有用的。 广告定向:许多广告平台使用Cookie来跟踪用户的兴趣和行为,并根据这些信息向用户推送相关的广告内容。 需要注意的是,Cookie是存储在客户端的文本文件,因此可以被篡改和删除。为了保护用户隐私和提高安全性,Web应用程序和浏览器都提供了对Cookie的一些控制和限制机制,如设置Cookie的有效期限、限制Cookie的访问范围、启用Secure标记来仅在HTTPS连接中传输Cookie等。 5. 什么是Session?如何在前端实现基于Session的身份验证? 在计算机网络中,Session(会话)是指客户端和服务器之间的一段交互时间。 它开始于客户端向服务器发送请求,并一直持续到服务器响应完成。 Session通常用于维护特定用户在一段时间内的状态和信息。 在前端实现基于Session的身份验证,通常的步骤如下: 登录验证:用户通过提供用户名和密码进行登录。前端将用户输入的凭据发送到服务器,服务器进行验证,如果验证通过,则生成一个唯一的会话标识符(Session ID)。 存储Session ID:服务器将生成的Session ID返回给前端,前端通常会将Session ID保存在Cookie中或使用其他方式存储,以便在后续的请求中发送给服务器。另外,还可以将Session ID存储在本地存储(如localStorage)或会话存储(如sessionStorage)中。 身份验证:在后续的请求中,前端需要将Session ID包含在每个请求中,通常通过将其作为Cookie的值发送。服务器接收到请求后,会通过验证Session ID来识别用户,并判断用户是否已经通过登录验证。 会话管理:服务器通过Session ID来获取与该用户关联的会话数据。会话数据可以存储在服务器的内存中、数据库中或缓存中,用于存储用户状态、权限信息等。服务器可以根据Session ID进行相关操作,如更新会话状态、获取用户信息等。 需要注意以下几点: 服务器端实现:在实现基于Session的身份验证时,还需要服务器端的支持。服务器需要在接收到请求时,解析Cookie中的Session ID,并对其进行验证和处理。 安全性考虑:为了增加安全性,建议使用HTTPS来传输Session ID,防止中间人攻击和信息篡改。此外,还需要适当设置Session的过期时间,并定期更新Session ID。 注销:为了注销Session和退出登录,需要在服务器端删除或失效Session数据,并在前端清除存储的Session ID。 安全漏洞:基于Session的身份验证需要处理一些常见的安全漏洞,如会话劫持和会话固定攻击。服务器端应采取适当的安全防护措施,如生成强大的Session ID、使用随机数种子、控制Cookie的安全标志等。 综上所述,基于Session的身份验证在前端通常涉及用户登录、Session ID的存储和传输,以及在后续请求中验证和管理会话数据。服务器端负责验证Session ID并提供相应的会话管理功能。 6. 对称加密和非对称加密是什么,如何使用? 对称加密和非对称加密是常见的加密算法,用于确保数据在传输或存储过程中的安全性。 对称加密: 对称加密使用相同的密钥(称为秘密密钥)进行加密和解密。 加密和解密的过程都使用同一个密钥,因此速度较快。 常见的对称加密算法有DES、AES等。 使用对称加密时,发送方和接收方需要事先共享同一个密钥。 非对称加密: 非对称加密使用一对密钥,分别称为公钥和私钥。 公钥用于加密数据,私钥用于解密数据。 使用公钥加密的数据只能通过对应的私钥进行解密。 常见的非对称加密算法有RSA、ECC等。 使用非对称加密时,发送方发布其公钥给接收方,接收方使用公钥加密数据后发送给发送方,发送方再使用私钥解密数据。 使用对称加密和非对称加密的一般步骤: 对称加密: 选择适当的对称加密算法和密钥长度。 生成密钥并共享给通信双方。 发送方使用共享的密钥对数据进行加密。 接收方使用共享的密钥对数据进行解密。 非对称加密: 接收方生成一对公钥和私钥。 发送方获取接收方的公钥。 发送方使用接收方的公钥对数据进行加密。 接收方使用私钥对数据进行解密。 对称加密适用于传输速度要求高、密钥共享方便的场景;而非对称加密适用于传输安全性要求高、密钥共享困难的场景。通常的做法是,使用非对称加密来安全地传输对称加密中所使用的密钥,以确保传输过程的安全性。 7. 什么是TCP/IP协议?它在计算机网络中的作用是什么? TCP/IP(Transmission Control Protocol/Internet Protocol)是一组网络通信协议,用于在计算机网络上进行可靠的数据传输和通信。它是互联网的基础协议套件,支持网络间的数据传输和互联网上的通信。 TCP/IP协议由两个主要协议组成: TCP(Transmission Control Protocol):TCP提供可靠的、面向连接的数据传输。它的主要功能是分割和重组数据,确认数据的完整性和可靠性,以及处理数据包在网络上的顺序。TCP通过建立连接、数据分段、错误检测和重传等机制,确保数据在源和目标之间可靠地传输。TCP适用于需要可靠性和顺序交付的应用,如网页浏览、文件传输和电子邮件等。 IP(Internet Protocol):IP是计算机网络中的主要协议,负责在网络上定位和传输数据包。它定义了数据包的格式、寻址方案和路由选择。IP协议的主要功能是将数据包从源主机路由到目标主机,实现网络的互联和跨网络通信。IP协议是无连接的,每个数据包独立处理,因此它的传输不保证数据包的可靠性、顺序和时延。 TCP/IP协议在计算机网络中扮演着重要的角色,具有以下作用: 路由和数据传输:TCP/IP协议套件提供了路由和数据传输功能,使得数据包能够在不同的网络和主机之间进行传输。它支持将数据包从源地址路由到目标地址,并确保数据的可靠性和顺序。 IP地址和寻址:TCP/IP使用IP地址作为网络中主机的唯一标识符。IP地址用于标识主机的位置和网络归属,使得数据包能够准确路由到目标主机。IP地址还支持分级的寻址方式,提供了灵活的网络划分和子网管理能力。 互联网标准:TCP/IP是互联网的基础协议套件,定义了互联网的基本通信协议和数据格式。它为互联网上的各种应用提供了统一的通信标准,使得不同计算机和操作系统之间能够进行交互和通信。
点赞 8
评论 2
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
06-18 20:05
海康威视_算法研发部_AI算法工程师(准入职员工)
海康内推-海康内推码
岗位:武汉 嵌入式开发timeline:8.30 测评,10.9 一面,10.11 二面一面技术:自我介绍讲下实习经历平常怎么debug项目中有没有遇到什么问题,怎么解决的介绍一下学校经历了解数据结构吗?基本的数据结构?查找搜索效率?有什么方法可以提高效率?具体围绕数据结构问了很多RTOS,多任务操作反问:做存储固件的,具体的进来再分二面HR:北京线下,地点在北京研发中心,具体内容就是唠家常,一些HR面的基本问题销售工程师工作体验,总结累但成长很多。1.大家最先关注的就是HIK的工作压力,只能说体面厂没有辜负盛名!名不虚传!我来这边是销售岗,基本上每天都要差不多11点下班。因为销售不仅需要对接...
点赞
评论
收藏
分享
06-18 18:04
门头沟学院 Java
成功入职腾讯实习!
终于进入了心心念念的腾讯,虽然是日常实习,但我也喜欢!哈哈哈,流程只走了一个月,可能是日常实习的原因,面试也很简单,入职还领导了白色的手提包,非常好看!
点赞
评论
收藏
分享
04-30 19:15
北京航空航天大学 Java
避雷腾讯CDG
timeline:4.9 一面,秒过4.14 二面,1h后过4.15 hr面,我说我现在有一个offer这周ddl,hr说本周会给我结果4.16 转录用评估4.17晚,hr加微信,说面试通过,欢迎加入,我以为这周就会发offer,于是拒了另一个offer4.23 4.27 催了两次,都说五一前反馈结果4.30 录用评估挂避雷:·hr面时明确和我表示,周末前会给我结果,但直到我另一个offer过期,也没有给我结果·加我的hr先告诉我通过面试,欢迎加入,让我认为拿到了口头offer,于是拒绝了其他offer和面试,但之后一直拖着不发·网上浏览时,发现还有几位和我相同经历的同学(同base,同部门,同录用评估,同拖两周以上),感受到了cdg的海王经验教训&感受:1. 只有offer到手才稳,只要没有书面offer就当做没有通过2. 假如手上有一个offer保底和多个不确定的offer,并且保底offer过期前其他offer没有到手,那就选保底3. offer没到手前,不要拒绝别的面试(我拒了很多面试,导致流程结束,现在几乎没有面试机会了)4. 网上看录用评估挂的概率很低,没想到会发生在自己身上哈哈哈哈
董春花_:
真诚无罪,别听评论区那个清华的。按他的逻辑,你有分寸人觉得你是不想来,你积极热情人觉得你太想来,你好骗人就可你养鱼,你不好骗人觉得你服从性不高,合着**做啥都白扯。保持谦逊礼貌与对offer的积极性不才是最正常,也正确的做法么?招聘方的错强加到应聘者身上,***何不食肉糜。
点赞
评论
收藏
分享
06-05 17:59
已编辑
武汉理工大学 算法工程师
27届求拷打
本人目前大二,这学期结束后想找一份长期实习(4-6个月),上个月投了百度、快手、拼多多、美团等公司,有一部分投递记录的简历初筛都已通过,但是后续的面试都没有收到信息。之前也有快手的员工加我微信想要内推我。发这篇帖子想得到大佬的指导,提供一些简历修改的意见、投递技巧和日后学习路线建议。
要发财的coder很优秀:
快手内推是诈骗,骗钱你改简历呢
投递快手等公司10个岗位
点赞
评论
收藏
分享
今天 14:41
西安电子科技大学 Java
面试官问我,后端一次性返回十万条数据,前端应该怎么处理 ?
问题描述面试官:后端一次性返回10万条数据给你,你如何处理?我:歪嘴一笑,马上给后端发送一百万次请求,干蹦他的服务器,让他给爷哭!问题考察点性能优化意识(能否识别出“10 万条数据”会导致性能问题?是否第一反应是优化处理方式?)浏览器渲染机制认知(是否理解 DOM 多、内存占用大、长任务对 UI 卡顿的影响?)数据处理策略(是否会用分页、分片、懒加载、虚拟滚动等数据加载/渲染策略?)项目实战经验(是否能结合实际业务讲解你曾用过的优化方案?)前后端协同思维(是否考虑跟后端协商分页/接口设计?)代码抽象能力(是否能设计合理的数据结构 / 缓存机制 / Worker / 节流方案?)解决方案和思路1...
投递太古地产等公司7个岗位 >
牛客在线求职答疑中心
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
27前端|面10家大厂全过,原来面试官要的不是八股!
2.0W
2
...
不知道会不会有结果
5974
3
...
25年京东笔试如何准备?
5347
4
...
末尾了,哥们终于不是0offer了
5347
5
...
鼠鼠我该怎么活啊
4767
6
...
面试官会非常反感的5句话
4396
7
...
我的大学生涯是不是混的很失败?/(ㄒoㄒ)/~~
4396
8
...
请问这是在招奴隶吗
3529
9
...
一个穷人的职场生活
3262
10
...
无缘字节
3047
创作者周榜
更多
正在热议
更多
#
我的职场心眼子段位
#
18818次浏览
485人参与
#
如何看待应届生身份?
#
117234次浏览
1118人参与
#
职场捅娄子大赛
#
396459次浏览
3986人参与
#
商战,最累的是我们
#
15564次浏览
70人参与
#
写给毕业5年后的自己
#
16144次浏览
259人参与
#
离家近房租贵VS离家远但房租低,怎么选
#
7866次浏览
117人参与
#
金三银四,你有感觉到吗
#
593866次浏览
5888人参与
#
机械/汽车制造公司工作体验
#
14511次浏览
38人参与
#
520告白墙
#
44692次浏览
563人参与
#
计算机专业还有必要去大厂卷吗
#
24079次浏览
135人参与
#
还记得你第一次面试吗?
#
192750次浏览
2888人参与
#
春招别灰心,我们一人来一句鼓励
#
113644次浏览
1304人参与
#
机械求职避坑tips
#
49509次浏览
372人参与
#
为了找工作你花了哪些钱?
#
2050次浏览
17人参与
#
生化医药面经大本营
#
110912次浏览
474人参与
#
哪些公司校招卡第一学历
#
59457次浏览
227人参与
#
京东美团大战,你怎么看?
#
85617次浏览
475人参与
#
如果可以,你希望哪个公司来捞你
#
92305次浏览
390人参与
#
软开人,说说你的烦心事
#
51203次浏览
364人参与
#
你找实习最大的坎坷是什么
#
30043次浏览
366人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务