news 2026/4/18 10:39:19

华为OD技术面真题 - 计算机网络 - 3

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为OD技术面真题 - 计算机网络 - 3

文章目录

  • 介绍一下HTTP报文结构
  • HTTP请求方法有哪些,分别代表什么含义
  • HTTP响应状态码分为哪几类
  • HTTP和HTTPS的区别
  • HTTP请求为什么是无状态的
  • 如何使用HTTP实现有状态访问

介绍一下HTTP报文结构

HTTP请求头结构图:

请求报文整体分为四个部分:

  1. 请求行:包含一下几个结构
    • 请求方法:表示这个报文的目的,具体有(POST、GET、PUT、Delete、HEAD、CONNECT等)
    • URI:代表服务器上的资源路径
    • HTTP版本:使用的协议版本
  2. 请求头: HTTP 请求头用于向服务器说明“我是谁、我想要什么、我怎么传、你要怎么处理”,常见请求头有User-AgentAccept-Language,Accept-Encoding
  3. 空行:用来分隔“请求头”和“请求体”
  4. 请求正文(请求体):可选,不是所有请求都有消息体。存储要发送的数据。

HTTP响应头结构

主要也分为四个部分

  1. 状态行:主要包含三个部分:
    • HTTP版本:使用的协议版本
    • 状态码:请求处理结果
    • 状态描述: 对状态码的文字说明
  2. 响应头:类似于请求头
  3. 空行:用来分隔响应头和响应体
  4. 响应体:携带真正的数据内容

HTTP请求方法有哪些,分别代表什么含义

HTTP的请求方法分为以下几种,并提供含义

  1. GET:从服务器获取资源,不改变服务器状态。
  2. POST:用于提交数据。向服务器提交数据,通常用于新增或触发操作,会改变服务器状态。
  3. PUT:用新数据“整体替换”服务器上的资源,会改变服务器状态。
  4. DELETE:删除服务器上的指定资源。
  5. PATCH:只修改资源的部分字段。
  6. HEAD:与 GET 类似,但不返回响应体。用于判断资源是否存在等
  7. OPTIONS:询问服务器支持哪些方法或跨域能力。
  8. TRACE:请求回显,服务器原样返回收到的请求。
  9. CONNECT:用于 HTTPS 代理,建立 TCP 隧道。

HTTP响应状态码分为哪几类

HTTP 状态码是三位数字,按第一位进行分类,主要分为以下几类每一类给出常见几个状态码:

  1. 1xx:表示表示请求已接收,继续处理。
    • 100 continue: 客户端可继续发送请求体
    • 101 Switching Protocols:协议升级(如 HTTP升级为WebSocket)
  2. 2xx:请求被服务器正确处理.
    • 200 OK: 请求成功
    • 201 Created: 资源创建成功
    • 204 No Content: 成功但无响应体
  3. 3xx: 重定向,需要客户端采取进一步操作。
    • 301 Moved Permanently: 永久重定向
    • 302 Found: 临时重定向
    • 304 Not Modified:使用缓存
  4. 4xx: 请求有问题,服务器无法处理
    • 400 Bad Request: 请求格式错误。
    • 401 Unauthorized: 未认证
    • 403 Forbidden: 无权限
    • 404 Not Found: 资源不存在
  5. 5xx: 服务端错误
    • 500 Internal Server Error: 服务器内部错误
    • 502 Bad Gateway: 网关错误
    • 503 Service Unavailable: 服务不可用
    • 504 Gateway Timeout: 网关超时

HTTP和HTTPS的区别

HTTP 是明文传输协议,不安全;HTTPS 在 HTTP 基础上通过 TLS 加密,保证通信的机密性、完整性和身份认证。

HTTPS的大致流程:

  1. 客户端发起 HTTPS 请求
  2. 服务器返回数字证书
  3. 客户端验证证书合法性
  4. 利用证书中公钥协商对称密钥
  5. 使用对称加密传输 HTTP 数据

HTTP请求为什么是无状态的

无状态的含义:HTTP 本身不记录请求之间的状态,每次请求都是独立的,服务器不知道上一次请求发生了什么。 HTTP总体流程为客户端发一次请求 → 服务器处理 → 返回响应 → 不保存客户端信息.下次请求,服务器知道你上一次做了什么.

为什么设计为无状态:

  1. 简单:TTP协议最初设计为一个简单的、轻量级的协议,旨在快速传输网页内容。无状态的设计使得服务器不必为每个客户端维护状态信息,从而减少了服务器的负担和复杂性。
  2. 可伸缩性:无状态的特性使得服务器可以很容易地扩展,因为每个请求都可以由任何一个服务器处理,而不必关心之前的请求历史。这使得负载均衡变得更加容易,因为可以将请求分发到不同的服务器上,而无需担心状态信息的同步问题。
  3. 可靠性:无状态的设计使得HTTP协议更加健壮。如果某个请求失败了,客户端可以重新发送请求,而不需要担心之前的请求状态。服务器只需处理当前的请求即可,无需维护长期的状态信息。
  4. 安全性:无状态的特性也有助于提高安全性。因为每个请求都是独立的,所以攻击者很难通过分析请求序列来获取敏感信息。此外,无状态的设计使得服务器不必担心状态信息被篡改或泄露。

如何使用HTTP实现有状态访问

思路:HTTP 本身不保存状态 → 状态信息由客户端携带 + 服务器存储 → 形成有状态访问。

常见方案

  1. Cookie + Session: 方案总体流程
    • 用户第一次访问网站,服务器生成一个Session ID,在服务器保存状态数据。
    • 服务器通过Set-Cookie把 Session ID 发给客户端
    • 客户端每次请求都带上 Cookie(Session ID)
    • 服务器根据 Session ID 找到对应状态,完成有状态访问
  2. Token:方案总体流程
    • 用户登录 → 服务器生成Token
    • 服务器把 Token 返回给客户端
    • 客户端每次请求带上 Token(Header 或 Cookie中)
    • 服务器解析 Token → 得到用户状态
  3. URL参数:放在把状态信息放在 URL/ 消息体 中传递。(不建议)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 5:26:36

Sambert-Hifigan镜像安全加固:防止未授权API调用的配置策略

Sambert-Hifigan镜像安全加固:防止未授权API调用的配置策略 🎙️ 背景与挑战:开放API带来的安全隐患 随着语音合成技术在智能客服、有声阅读、虚拟主播等场景的广泛应用,基于深度学习的TTS(Text-to-Speech&#xff0…

作者头像 李华
网站建设 2026/4/18 8:00:18

项目解决方案:港口AI识别建设解决方案

目录 第一章 项目背景 1.1 智能化转型需求 1.2 安全管理需求升级 1.3 技术革新推动 第二章 需求确认 2.1 多平台访问与视频汇聚需求 2.2 权限管理与安全需求 2.3 AI识别需求 2.4 数据整合与分析需求 第三章 建设目标 3.1 经济完备,高性价比 3.2 先进实用…

作者头像 李华
网站建设 2026/4/18 5:24:17

双气联防技术在下一代储能系统安全预警中的应用

摘要:双气联防技术在下一代储能系统安全预警中的应用本文聚焦储能系统安全防护的前沿技术——基于氢气($H_2$)和一氧化碳($CO$)的"双气联防"策略。主要内容可概括为:预警机制创新锂电池热失控早期…

作者头像 李华
网站建设 2026/4/18 5:22:35

MySQL的索引详细介绍(全网最详细!!!)

目录 1.什么是索引 1.1 索引的数据结构 1.1.1 Hash表1.1.2 二叉查找树1.1.3 平衡二叉树1.1.4 B树1.1.5 B树 2.索引的优缺点3.索引的使用场景4.索引的分类 4.1 主键索引4.2 唯一索引4.3 单值索引(单列索引)4.4 复合索引(组合索引)4.5 普通索引4.6 全文索引4.7 空间索引4.8 前缀…

作者头像 李华
网站建设 2026/4/18 3:22:01

在 RAP 里实现文件上传 Stream:用 @Semantics.largeObject 让 Fiori Elements 自动生成上传与下载

在很多业务应用里,附件上传早就不是加分项,而是基本能力:用户希望把 Excel 模板、对账表、图片凭证、合同 PDF 直接挂在业务对象上,后续还能在对象页里点击下载或预览。放到 ABAP RESTful Application Programming Model (RAP) 的语境里,一个更现实的诉求是:尽量不写前端…

作者头像 李华
网站建设 2026/4/17 14:38:08

MySQL篇之对MySQL进行参数优化,提高MySQL性能

1. MySQL参数优化说明 MySQL 参数调优是提高数据库性能的重要手段之一。通过调整 MySQL 的配置参数,可以优化查询速度、提升并发处理能力、减少资源消耗等。 MySQL 的性能优化涉及到多个方面,包括内存管理、磁盘 I/O、查询优化、连接管理、复制配置等。根…

作者头像 李华