在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
HTTP相信大家都不陌生了,作为一种应用最为广泛的网络传输协议,它也常常出现在面试考题之中。本文汇总了目前比较常考的HTTP面试题,并整理好了所有HTTP面试题的答案,希望可以帮助到正在复习HTTP相关知识点的小伙伴~
1、HTTP和HTTPS的区别有哪些?
HTTP是一种超文本传输协议,HTTP是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。 HTTPS比 HTTP多了secure安全性这个概念,实际上, HTTPS并不是一个新的应用层协议,它其实就是HTTP + TLS/SSL协议组合而成,HTTPS可以说就是身披了一层SSL的HTTP。它们最大的区别就是HTTP 在地址栏上的协议是以 http:// 开头,而 HTTPS 在地址栏上的协议是以 https:// 开头。另外,HTTP是未经安全加密的协议,它的传输过程容易被攻击者监听、数据容易被窃取、发送方和接收方容易被伪造;而HTTPS是安全的协议,它通过 密钥交换算法 - 签名算法 - 对称加密算法 - 摘要算法 能够解决上面这些问题。还有,HTTP 的默认端口是80,而HTTPS的默认端口是443。
2、HTTP Get和Post区别是什么?
HTTP中包括许多方法,Get和Post是HTTP中最常用的两个方法。get方法一般用于请求,而post方法一般用于表单的提交。get相当于一个是pull/拉的操作,而post相当于是一个push/推的操作。get请求的URL有长度限制,而post请求会把参数和值放在消息体中,对数据长度没有要求。get请求会被浏览器主动cache,而post不会,除非手动设置。get请求在浏览器反复的回退/前进操作是无害的,而post操作会再次提交表单请求。
3、UDP是什么?
UDP是用户数据报协议。它不需要所谓的握手操作,从而加快了通信速度,允许网络上的其他主机在接收方同意通信之前进行数据传输。UDP 的特点主要有,能够支持容忍数据包丢失的带宽密集型应用程序,具有低延迟的特点,能够发送大量的数据包,能够允许DNS查找,DNS是建立在UDP之上的应用层协议。
4、TCP 是什么?
TCP是传输控制协议。它能够帮助你确定计算机连接到Internet以及它们之间的数据传输。通过三次握手来建立TCP连接,三次握手就是用来启动和确认TCP连接的过程。一旦连接建立后,就可以发送数据了,当数据传输完成后,会通过关闭虚拟电路来断开连接。
5、描述一下TCP 三次握手和四次挥手?
TCP 三次握手:SYN是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立TCP连接时,首先会发送的一个信号。客户端在接受到SYN消息时,就会在自己的段内生成一个随机值X。服务器收到SYN后,打开客户端连接,发送一个SYN-ACK作为答复。确认号设置为比接收到的序列号多一个,即X + 1,服务器为数据包选择的序列号是另一个随机数Y。最后,客户端将ACK发送给服务器,序列号被设置为所接收的确认值即Y + 1。
TCP 四次挥手:在连接终止阶段使用四次挥手,连接的每一端都会独立的终止。具体过程如图所示:
6、请你说一下HTTP常见的请求头
这个问题比较开放,因为 HTTP 请求头有很多,这里只简单举出一个例子。HTTP标头会分为四种,分别是 通用标头、实体标头、请求标头、响应标头。Cache-Control 是一个通用标头,他可以出现在请求标头和响应标头中,Cache-Control 的种类比较多,虽然说这是一个通用标头,但是有一些特性是请求标头具有的,有一些是响应标头才有的。主要大类有 可缓存性、阈值性、 重新验证并重新加载 和其他特性。
7、地址栏输入URL发生了什么?
下面我们就来探讨一下从输入URL后到响应,都经历了哪些过程。首先,你需要在浏览器中的URL地址上,输入你想访问的地址。然后,浏览器会根据你输入的URL地址,去查找域名是否被本地DNS缓存。在由根域名服务器 -> 顶级域名服务器 -> 权威DNS服务器后,由权威服务器告诉本地服务器目标IP地址,再有本地DNS服务器告诉用户需要访问的IP地址。
8、HTTPS的工作原理。
HTTPS的工作原理其实就是SSL/TLS的握手过程。在 TLS 握手期间,Internet 中的通信双方会彼此交换信息,验证密码套件,交换会话密钥。每当用户通过 HTTPS 导航到具体的网站并发送请求时,就会进行 TLS 握手。除此之外,每当其他任何通信使用HTTPS(包括 API 调用和在 HTTPS 上查询 DNS)时,也会发生 TLS 握手。TLS 具体的握手过程会根据所使用的密钥交换算法的类型和双方支持的密码套件而不同。我们以RSA 非对称加密来讨论这个过程。整个 TLS 通信流程图如下:
以上就是HTTP面试题汇总以及答案,大家都会做了吗?如果对于相关知识点还有疑问,欢迎大家报名博学谷的在线课程,将会有一对一讲师为大家提供就业服务。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
学什么好就业?大学毕业后才开始学编程入行晚不晚?
学什么好就业?往往大学毕业的大学生面临择业的时候就会出现迷茫,大学课程非常丰富,但是对于大学生来说,并不了解目前市场所需要的技术热点是什么,或者相对实战能力较弱,担心无法获得高薪,甚至有同学认为大学毕业后才开始学习编程,入行已经晚了。其实大家并不需要过多的担忧。如果你是计算机专业毕业的,目前与编程技术相关的大部分岗位都是出于高薪的水平
5835
2019-08-12 18:30:51
1024程序员节 报博学谷IT在线培训班领券立减1024元
1024程序员节 报博学谷IT在线培训班领券立减1024元。1024程序员节活动时间:10月10日~10月24日。如果你想转行做IT,在线培训班是最好的选择,不离职,不离校,在线学习。Java开发、Python、前端、大数据、UI/UE设计、软件测试、产品经理、新媒体在线培训班课程在线领券立减1024元。
4482
2019-12-13 19:34:45
IT程序员面试注意细节有哪些?
IT程序员面试注意细节有哪些?技术娴熟面试失败的原因可能是准备不足。IT行业技术迭代快,需要保持不断学习的习惯,学习应该成为一种习惯,这能让应聘者将来的工作做得更好、职业生涯更上一层楼。大多数的面试目的是面试官为公司找到适合企业发展的人才,为企业创造价值。
3898
2020-03-31 13:59:35
培训班出来的程序员找得到工作吗?
如今,互联网的IT技术岗位俨然已经成为了不少人改变命运,实现高薪梦想的一条康庄大道。正因如此,才会有许多非科班出身的转业者,纷纷想通过IT培训跻身于程序员的岗位。不少人在参加IT培训之前,也难免会有这样的疑问,培训班出来的程序员找得到工作吗?事实上没有任何人可以给你的就业打包票,虽然目前市面上确实存在一些对培训班出来的程序员的偏见,但是通过IT培训拿到高薪offer的人也不在少数!
5905
2020-04-30 09:22:59
计算机程序员培训难不难?要多久?
随着近些年来互联网技术的高速发展,IT行业迎来了蓬勃发展的好势头,对IT技术人才的需求也在不断扩大。为了把握技术发展的红利,许多非科班出身的初学者,也想通过培训进入IT这个朝阳行业。那么很多人会问:计算机程序员培训难不难?要多久?程序员的培训属于高端技术培训,难度肯定是有的,至于学习时间要根据培训机构的课程安排和自己的学习情况判断。
6613
2020-06-17 18:13:54