宁波网络建站公司,企业网站注册流程,贵州城乡住房建设网站,做的页面好看的网站面试计算机网络框架八股文十问十答第三期 作者#xff1a;程序员小白条#xff0c;个人博客 相信看了本文后#xff0c;对你的面试是有一定帮助的#xff01;关注专栏后就能收到持续更新#xff01;
⭐点赞⭐收藏⭐不迷路#xff01;⭐
1#xff09;GET和POST请求的区…面试计算机网络框架八股文十问十答第三期 作者程序员小白条个人博客 相信看了本文后对你的面试是有一定帮助的关注专栏后就能收到持续更新
⭐点赞⭐收藏⭐不迷路⭐
1GET和POST请求的区别
主要区别如下
GET 用于请求服务器上的资源。参数通过 URL 的查询字符串传递可见于 URL 中。通常用于获取数据不应该有副作用。请求长度受限于浏览器和服务器的限制。可以被缓存以及添加到浏览器的历史记录中。 POST 用于向服务器提交数据通常导致服务器状态的改变或副作用。参数传递在请求的消息体中不可见于 URL更适合传输敏感数据。通常用于向服务器提交表单数据、上传文件等操作。请求长度理论上没有限制。不能被缓存不会被添加到浏览器的历史记录中。
2POST和PUT请求的区别
主要区别如下
POST 通常用于创建新资源或提交数据。每次请求可能会导致服务器上创建一个新的资源。对同一资源的多次 POST 请求会创建多个资源。 PUT 通常用于更新已存在的资源。每次请求会在服务器上更新指定的资源如果资源不存在则创建。对同一资源的多次 PUT 请求不会创建多个资源而是覆盖原有的资源。
3常见的HTTP请求头和响应头
常见的 HTTP 请求头和响应头包括
常见的请求头
User-Agent 发送请求的用户代理的名称和版本信息。Accept 指定客户端可接受的内容类型。Content-Type 发送请求时指定请求体的内容类型。Authorization 包含用于进行身份验证的凭据通常用于 HTTP 认证。Cookie 包含客户端发送到服务器的 cookie 信息。Referer 表示请求来源的 URL。
常见的响应头
Content-Type 指定响应体的内容类型。Content-Length 指定响应体的长度以字节为单位。Cache-Control 控制缓存的行为。Set-Cookie 服务器通过响应头设置 cookie。Location 用于重定向指示客户端应该跳转到的 URL。Server 服务器的名称和版本信息。ETag 用于标识资源版本配合 If-Match 或 If-None-Match 使用支持条件请求。
4HTTP状态码304是多好还是少好
HTTP 状态码 304 表示“未修改”用于告知客户端缓存的资源仍然有效并且客户端可以继续使用缓存的版本。因此对于网络性能和用户体验来说HTTP 状态码 304 是有益的因为它减少了不必要的网络流量和资源加载时间。
优点
减少网络流量 当客户端请求的资源未发生变化时服务器返回 304 状态码告知客户端可以继续使用缓存的资源避免了不必要的数据传输。提升加载速度 使用缓存资源可以加快页面加载速度提升用户体验。
不足
可能导致更新延迟 如果服务器端的资源已经更新但客户端仍然使用缓存的资源可能导致用户无法及时看到最新内容。
总的来说HTTP 状态码 304 对于网络性能和用户体验是有利的但在某些情况下可能会导致更新延迟。
5常见的HTTP请求方法
常见的 HTTP 请求方法包括
GET 用于请求指定的资源。POST 用于向服务器提交数据。PUT 用于更新指定的资源。DELETE 用于删除指定的资源。PATCH 用于对资源进行部分更新。OPTIONS 用于获取目标资源支持的通信选项。HEAD 类似于 GET 请求但只返回头部信息。TRACE 用于对请求消息的回显测试。CONNECT 用于将请求连接转换为透明的 TCP/IP 隧道。
6OPTIONS请求方法及使用场景
OPTIONS 请求方法用于获取目标资源所支持的通信选项主要用于跨域资源共享CORS和预检请求。
使用场景
CORS 在进行跨域请求时浏览器会先发送 OPTIONS 请求以确定服务器是否支持跨域请求并获取服务器端的 CORS 配置信息。预检请求 当使用非简单请求例如使用自定义头部或进行跨域请求时浏览器会先发送 OPTIONS 预检请求以获得服务器的允许信息然后再发送实际的请求。
主要作用
查询服务器支持的请求方法 OPTIONS 请求通常会返回一个 Allow 头部其中包含了服务器支持的所有 HTTP 请求方法客户端可以根据这个信息来确定可以使用哪些方法与服务器进行交互。查询服务器支持的请求头部 OPTIONS 请求还可以返回一个 Access-Control-Allow-Headers 头部其中包含了服务器支持的所有自定义请求头部这对于跨域资源共享CORS是非常有用的。
7HTTP 1.0 和 HTTP 1.1 之间有哪些区别
主要区别如下
持久连接Keep-Alive HTTP 1.1 默认启用了持久连接在同一连接上可以传输多个请求和响应减少了连接建立和关闭的开销提高了性能。管道化Pipeline HTTP 1.1 支持管道化允许客户端在同一连接上发送多个请求而无需等待响应提高了并发性能。缓存控制 HTTP 1.1 引入了更强大的缓存控制机制包括 Cache-Control 和 ETag 等头部提供了更灵活和细粒度的缓存控制。主机头部Host Header HTTP 1.1 引入了 Host 头部字段使得同一个 IP 地址上的不同域名可以共享同一个服务器并区分不同的网站。状态码扩展 HTTP 1.1 引入了更多的状态码如 100、101、206 等增加了协议的灵活性和扩展性。其他改进 HTTP 1.1 还包括对消息传输编码、身份认证、代理服务器支持等方面的改进。
8HTTP 1.1 和 HTTP 2.0 的区别
主要区别如下
多路复用Multiplexing HTTP 2.0 支持在同一个连接上并行发送多个请求和响应克服了 HTTP 1.x 中的队头阻塞问题提高了并发性能。头部压缩Header Compression HTTP 2.0 使用 HPACK 算法对消息头部进行压缩减少了消息头部的大小降低了传输延迟和带宽消耗。服务器推送Server Push HTTP 2.0 允许服务器在客户端请求之前向客户端推送资源提高了页面加载速度和性能。二进制传输 HTTP 2.0 将消息分帧并采用二进制格式进行传输取代了 HTTP 1.x 的文本协议提高了解析效率和传输速度。优化头部 HTTP 2.0 使用了“头部列表”和“头部块”等技术来优化消息头部的传输效率减少了重复传输的信息。连接优化 HTTP 2.0 可以复用 TCP 连接减少了连接建立和关闭的开销提高了连接的利用率。
9HTTP和HTTPS协议的区别
主要区别如下
安全性 HTTP 是明文传输的协议数据传输过程中容易被窃听和篡改而 HTTPS 则通过 SSL/TLS 加密保护数据的安全性提供了更高的安全性保障。加密方式 HTTP 不加密数据传输而 HTTPS 使用 SSL/TLS 协议对数据进行加密保证数据传输的机密性和完整性。默认端口 HTTP 默认端口为 80HTTPS 默认端口为 443。证书要求 在使用 HTTPS 时服务器需要具有有效的数字证书以便客户端验证服务器的身份。速度 HTTPS 由于加密解密的过程会增加数据传输的延迟可能会略微降低页面加载速度。
10GET方法URL长度限制的原因
GET 方法的 URL 长度限制是由浏览器或服务器设置的通常存在于浏览器或服务器的配置参数中。主要原因包括
浏览器限制 不同浏览器对 URL 长度的限制可能不同一般来说浏览器为了保护用户不受恶意网站的攻击会设置最大的 URL 长度限制超出限制的 URL 可能会被截断或拒绝发送。服务器限制 服务器端也可能对 URL 长度进行限制一般是出于安全考虑或性能考虑防止恶意请求或过大的请求占用服务器资源。协议限制 HTTP 协议本身并没有对 URL 长度进行严格的限制但是在实际应用中由于网络设备、中间件等的限制通常会存在一定的 URL 长度限制。传输限制 URL 的长度也受到网络传输的限制例如在某些网络环境下URL 过长可能会被分段或截断导致数据传输错误或不完整。
总的来说GET 方法 URL 长度限制的原因是多方面的包括浏览器、服务器、协议和传输等方面的因素都可能影响到 URL 的最大长度限制。
开源项目地址https://gitee.com/falle22222n-leaves/vue_-book-manage-system
已 300 Star
⭐点赞⭐收藏⭐不迷路⭐