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=20 key=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格式。

相关推荐
啊阿狸不会拉杆1 小时前
《计算机网络-自顶向下方法》3.9 小结 · 课后习题 · Wireshark实验
网络·测试工具·wireshark
Chengbei111 小时前
SRC报告成稿 Skill(SRC/0day 提交稿、分层验证门、Step 式 PoC、截图铁律)
网络·人工智能·安全·web安全·自动化·系统安全
小雪崩1 小时前
嵌入式学习 day39:TCP并发服务器模型
linux·服务器·c语言·网络·学习·tcp/ip
Doraemomo1 小时前
网络编程-复习
网络
2601_966377131 小时前
云上系统零改造过密评|数达安全发布通关四件套
网络·安全
bksczm2 小时前
Linux 五种 I/O 模型与多路复用详解
运维·服务器·网络
蒸蒸yyyyzwd2 小时前
cpp选手秋招学习笔记day24-cs144项目总结
运维·服务器·网络
瓦格哈儿2 小时前
删掉旧 SSL 证书会影响线上业务吗?风险点梳理
网络协议·https·ssl
数据知道3 小时前
静态分析入门——PE 结构、字符串、导入表快速定性
网络·安全·web安全·网络安全