news 2026/9/4 4:56:42

HTTP 请求包含哪些内容,请求头和请求体有哪些类型?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HTTP 请求包含哪些内容,请求头和请求体有哪些类型?

HTTP请求组成 & 请求头、请求体(面试Markdown)

一次完整HTTP请求报文分为4部分:请求行、请求头、空行、请求体

1. 请求行

格式:请求方法 资源路径 HTTP版本
示例:POST /api/user HTTP/1.1

  • 请求方法:GET、POST、PUT、DELETE、PATCH等
  • URL路径:访问的资源地址
  • HTTP版本:HTTP/1.1、HTTP/2、HTTP/3

2. 请求头(Request‑Header)

键值对形式,补充请求元信息,和业务数据无关,描述请求本身

高频常见请求头

  • Host:请求的目标主机域名/端口,1.1强制必须带
  • User‑Agent:客户端标识,浏览器、设备、客户端版本
  • Content‑Type最重要,告诉服务器请求体是什么数据格式
  • Accept:客户端能接收服务端返回什么类型响应数据
  • Accept‑Encoding:支持的压缩格式(gzip)
  • Accept‑Language:语言
  • Connection:keep‑alive保持长连接 / close关闭连接
  • Cookie:携带cookie信息
  • Authorization:身份认证token、Bearer令牌
  • Referer:来源页面地址
  • If‑Modified‑Since / If‑None‑Match:缓存协商相关头

3. 空行

分隔请求头和请求体,固定\r\n,必不可少。

4. 请求体(Request Body)

存放业务提交的数据。

⚠️ GET请求没有请求体,虽然语法可以写,但规范不建议,参数放URL查询参数。POST/PUT/PATCH才会使用请求体。


请求体常见Content‑Type类型(面试重点)

1. application/x‑www‑form‑urlencoded

  • 默认表单格式
  • 数据格式:name=zhangsan&age=20key=value&拼接
  • 特点:普通form表单不设置enctype默认就是这个;不适合传二进制文件;中文会url编码。

2. multipart/form‑data

  • 用于文件上传
  • 会用随机boundary字符串做分隔符,分割多个字段,可以同时传普通参数+二进制文件。
  • 文件上传接口必须用这个类型。

3. application/json(后端最常用)

  • JSON字符串格式:{"name":"zhangsan","age":20}
  • Restful接口主流格式,支持复杂嵌套对象。

4. text/xml

xml格式数据,现在互联网项目很少使用,老系统、第三方对接偶尔见到。

小结三个最常考:

  1. x‑www‑form‑urlencoded:普通表单键值对
  2. multipart/form‑data:文件上传
  3. application/json:json rest接口

面试口述版本

HTTP请求报文分为四部分:请求行、请求头、空行、请求体。
请求行包含请求方法、访问路径、HTTP版本。
请求头是一堆键值对,描述请求的附加信息,比如Host、User‑Agent、Authorization、Cookie,最重要的是Content‑Type,用来标识请求体的数据格式。
空行用来分隔请求头和请求体。
请求体存放业务数据,GET一般没有请求体,POST/PUT使用。

请求体常见三种类型:
application/x‑www‑form‑urlencoded是普通表单,key&value格式;
multipart/form‑data用于文件上传;
application/json是现在前后端分离最常用的JSON格式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/4 4:54:45

Windows鼠标光标自定义:原理、工具与实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 4:54:40

离线多语言OCR SDK:PaddleOCR工程化改造实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 4:54:10

交易设置详解:基于Python的仓位计算、盈亏比与风险控制实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 4:52:29

Python 基础函数大全:新手入门必备利器

因有着简洁易懂的语法以及丰富的库函数而被闻名, 就编程新手而言, 掌握基础函数乃是朝着某个世界迈进的第一步, 本文会为您去介绍一系列常用的基础函数, 这些函数涵盖字符串操作、列表操作、字典操作、数学运算、输入输出等诸多方面, 以此助力您能够轻松地入门编程。一、字符串…

作者头像 李华
网站建设 2026/9/4 4:51:52

基于MATLAB的惯性导航算法实现:从理论到代码实践

简介:本资源是面向惯性导航领域初学者与工程实践者的MATLAB算法实现套件,紧扣严恭敏教授《捷联惯导算法与组合导航原理》教材核心内容,系统解决姿态解算、初始对准、误差建模与仿真验证等关键问题,适用于高校导航制导课程实验、研…

作者头像 李华
网站建设 2026/9/4 4:51:19

基于YOLOv5s与K210的嵌入式离线人脸识别门禁方案

简介:这是一套面向计算机及相关专业本科生的毕业设计与期末大作业实战资源,聚焦嵌入式AI门禁系统的完整实现——融合Python上位机开发、YOLOv轻量级人脸检测算法与K210边缘计算平台,解决真实场景下低功耗、高响应的人脸识别门禁部署问题。资源…

作者头像 李华