计算机网络篇
GET请求和POST请求的区别:
1.请求参数的位置:GET请求的请求参数会附加在URL之后,参数用“&”连接,多个参数会导致URL的长度增加。而POST请求的请求参数会包含在请求体中,不会在URL中显示。这就引申出第二个区别:请求长度的限制。
2.请求长度:GET请求的请求参数因为附加在URL后面,因此它的长度受限于浏览器对URL长度的限制。而POST请求没有这个限制,因此POST请求适合传输大量的数据。
3.安全性:GET请求的请求参数暴露在URL中,因此不能传输敏感信息,而POST请求在请求体里面,相对来说更加安全。
4.幂等性:GET请求是幂等的,POST请求不是幂等的,多次执行GET请求,服务器返回相同的信息,多次提交POST请求,都会创建新的资源。
HTTP2相比HTTP1的优势:
1.多路复用:HTTP2引入了多路复用的技术,允许单个TCP连接中并行处理多个响应和请求。
2.头部压缩:HTTP2使用了头部压缩信息,通过共享头部信息,减少传输的数据量,消除了HTTP1中的队头阻塞问题。
3.服务器推送:HTTP2允许服务器主动向客户端推送资源,而无需等待客户端的请求,有利于减少往返时间,提高加载速度。
HTTPS为什么安全:
1.HTTPS采用了SSL/TLS协议对HTTP报文进行加密,保证敏感数据在传输过程中不被窃听和修改。
2.身份验证:HTTPS通过数字证书进行身份验证,确保通信双方的真实性。建立HTTPS服务时,客户端与服务器会进行身份验证,只有身份验证通过才能进行传输。
TCP和UDP的区别:
1.TCP是面向连接的(它的建立需要三次握手和四次挥手),UDP是无连接的。
2.TCP是可靠的传输协议,UDP不保证可靠。
3.TCP是面向字节流传输的,而UDP是面向报文传输的。
4.TCP仅支持单播,即一对一的全双工通信;而UDP支持广播和多播,即一对多,多对多的通信。
5.TCP的传输效率相对较低,而UDP的传输效率相对较高。
HTTP状态码:
- 1XX (信息状态码)
- 100 Continue:客户端应继续其请求。
- 2XX(成功状态码)
- 200 OK:请求成功
- 201 Created:请求已被实现,并且创建了一个新的资源。
- 204 No Content :服务器处理了请求,但未返回任何内容。
- 3XX(重定向)
- 301 请求的资源被永久移动到了新的URL路径上
- 302 请求的资源从不同的URL响应请求
- 304 客户端执行了GET请求但文件未发生变化。
- 4XX(客户端错误状态):
- 400 Bad Request :服务器无法理解请求
- 401 Unauthorized:请求要求身份验证
- 403 Forbidden:服务器理解请求但拒绝执行。
- 404 Not Found:服务器无法找到指定资源
- 405 Method Not Allowed:请求中指定的方法不被允许。
- 5XX(服务器错误状态码)
- 500 服务器遇到了一个未曾预料的错误,无法完成请求。
- 501 服务器不支持当前请求的某个功能
- 503 由于服务器维护或者过载,服务器无法处理请求。