当前位置: 首页 > news >正文

Content-Type 是 HTTP 请求 / 响应头中核心的字段

Content-Type 是 HTTP 请求 / 响应头中核心的字段,用来告诉服务端 / 客户端「传输的数据是什么格式」,不同取值对应完全不同的解析方式。
我会用通俗易懂的方式讲解开发中最常用的 4 种 Content-Type,以及它们的核心区别和使用场景。
 

一、核心结论先明确

 
Content-Type 类型 中文说明 数据格式 核心使用场景
application/x-www-form-urlencoded 表单默认编码 键值对(key1=value1&key2=value2) 普通表单提交、@RequestParam 接收参数
multipart/form-data 多部分表单数据 分段传输(含文件 + 普通字段) 上传文件(图片 / 文档)+ 普通参数
application/json JSON 格式 标准 JSON 字符串 前后端分离接口(RESTful)、@RequestBody 接收
text/plain 纯文本 无格式纯字符串 简单文本传输(极少用在业务接口)
 

二、逐个拆解(附示例 + 使用区别)

1. application/x-www-form-urlencoded(最基础的表单格式)

  • 本质:浏览器提交表单时的默认格式,会把表单里的键值对转成 key1=value1&key2=value2 的字符串,且自动编码特殊字符(比如空格转 +、中文转 URL 编码)。
  • 示例
     
    请求体内容:username=admin&password=123456&age=20
  • 服务端接收:用 @RequestParam(对应你之前的登录接口)。
  • 关键区别
    • 只能传普通键值对,不能传文件;
    • 数据会被编码,适合简单的文本参数;
    • <form> 标签不加 enctype 时的默认值。
     

2. multipart/form-data(文件上传专用)

  • 本质:「分段」传输数据,把每个参数(普通字段 / 文件)分成独立的「部分」,每个部分有自己的标识和格式,专门解决文件上传问题。
  • 示例
     
    请求体里会包含分隔符(比如 ------WebKitFormBoundaryxxx),区分不同参数:
    ------WebKitFormBoundary7MA4YWxkTrZu0gW
    Content-Disposition: form-data; name="username"admin
    ------WebKitFormBoundary7MA4YWxkTrZu0gW
    Content-Disposition: form-data; name="avatar"; filename="head.jpg"
    Content-Type: image/jpeg[文件二进制数据]
    ------WebKitFormBoundary7MA4YWxkTrZu0gW--
     
     
  • 服务端接收:普通字段用 @RequestParam,文件用 @RequestPart("avatar") MultipartFile file
  • 关键区别
    • 支持同时传普通参数 + 文件,是文件上传的唯一选择;
    • 数据不编码,直接传输二进制(适合文件);
    • 传输体积比 x-www-form-urlencoded 大(因为有分隔符)。
     
 

3. application/json(前后端分离主流)

 
  • 本质:传输标准的 JSON 字符串,是 RESTful 接口的标配,支持复杂数据结构(对象、数组)。
  • 示例
     
    请求体内容:{"username":"admin","password":"123456","roles":["admin","user"]}
  • 服务端接收:用 @RequestBody + 实体类(比如 @RequestBody LoginDTO loginDTO)。
  • 关键区别
    • 支持复杂数据结构(对象嵌套、数组),而 x-www-form-urlencoded 只能传扁平键值对;
    • 数据格式清晰,是前后端分离的首选;
    • 不能用 @RequestParam 接收(会解析失败)。
     
 

4. text/plain(纯文本)

  • 本质:只传输无格式的纯字符串,服务端不会做任何解析,直接按文本处理。
  • 示例:请求体内容就是 admin,123456(无键值对,纯文本)。
  • 服务端接收:需手动读取请求体内容解析,几乎不用在业务接口中。
  • 关键区别:无结构化,仅适合简单文本传输(比如日志、纯文本消息)。
 

三、核心使用原则(避坑关键)

 
  1. 普通表单提交(无文件) → 用 application/x-www-form-urlencoded + @RequestParam
  2. 上传文件(含普通参数) → 用 multipart/form-data + @RequestParam/@RequestPart
  3. 前后端分离接口(JSON 传参) → 用 application/json + @RequestBody
  4. 不要混用:比如前端传 application/json,服务端用 @RequestParam 接收,必然报解析错误(这是新手最常见的坑)。
 

四、Postman 测试示例(快速验证)

 
类型 Postman 操作
x-www-form-urlencoded Body → 选择 x-www-form-urlencoded → 填键值对
multipart/form-data Body → 选择 form-data → 填普通字段 + 文件
application/json Body → 选择 raw → 格式选 JSON → 写 JSON 字符串
text/plain Body → 选择 raw → 格式选 Text → 写纯文本
 

总结

  1. x-www-form-urlencoded 是表单默认格式,适合简单键值对,用 @RequestParam 接收;
  2. multipart/form-data 是文件上传专用,支持混合传参;
  3. application/json 是前后端分离主流,支持复杂结构,用 @RequestBody 接收;
  4. text/plain 无结构化,极少用在业务接口中。
 
核心避坑点:前端传什么 Content-Type,服务端就要用对应的接收方式,比如 JSON 格式不能用 @RequestParam,表单格式不能用 @RequestBody
http://www.jsqmd.com/news/394688/

相关文章:

  • 一字致命:单字符误写(代|)引爆Firefox 0Day RCE漏洞,内核安全再敲警钟
  • Agent驱动·自主运维:Swimlane AI安全运营中心,重构网络安全防御新范式
  • Java 接口测试框架 Restassured
  • 2026+ SRC众测漏洞挖掘实战指南:从入门到高分洞,全覆盖干货秘籍
  • 2026无锡紧固件生产厂家大揭秘,推荐几家靠谱之选,标准件/螺母/五金件/涂胶/非标螺丝/螺栓/螺丝,紧固件厂家价格多少 - 品牌推荐师
  • 人机共生·能力重构——AI时代安全工程师培养的新范式与未来路径
  • 2026年宁波60年树龄高端荒野红茶厂家哪家好?这几家值得关注,高端红茶,60年树龄高端荒野红茶优质厂家排行 - 品牌推荐师
  • Python-0001:import this
  • slope trick优化dp
  • 【AWS】【服务】aws 中的各种服务 ,比如 ECS、S3 、EC2 、 Certicicate Manager、CloudWatch等
  • 揭秘2026年1月评价高的空气幕厂家排行情况,冷却器/新风机组/表冷器/翅片管/干冷器/乏风取热箱,空气幕直销厂家有哪些 - 品牌推荐师
  • 完整教程:Android 15存储子系统深度解析(二):FUSE文件系统与Scoped Storage
  • Linux驱动开发笔记(二十四)——(下)IIO + MPU6050驱动 - 指南
  • 【Solr搜索引擎】-Solr知识点内容很详细
  • 2026年精选:不锈钢黑棒优质厂商TOP推荐,2507不锈钢板/不锈钢冷轧钢带/不锈钢六角棒,不锈钢黑棒现货批发口碑推荐 - 品牌推荐师
  • 直接上结论:9个AI论文工具测评!专科生毕业论文写作必备推荐
  • 新手也能上手!降AI率工具 千笔AI VS 万方智搜AI,专科生专属更高效
  • 用数据说话 9个AI论文工具测评:本科生毕业论文+开题报告全攻略
  • 同样一个点在空间发生变化是(平移、缩放、剪切、旋转),它会发生什么变化
  • 2026年铝行业热鼎盘供应商,精炼用盘新推荐,高密度硅酸钙管托/硬硅酸钙石保温板,铝行业精炼用热鼎盘源头厂家推荐榜单 - 品牌推荐师
  • 并行编程实战——CUDA编程的Enhancing Memory Allocation
  • 生产环境linux 系统移植(第二十八期)---- 运用MfgTool 工具烧写自制的烧写自制的系统系统---- Ubuntu20.04最佳实践与性能优化
  • 毕业论文神器!降AI率软件 千笔AI VS 笔捷Ai,自考党专属
  • 世毫九理论体系总览:从哲学到工程的全链路贯通
  • 专科生收藏!千笔,全网顶尖的AI论文工具
  • 2026年口碑优选:骨灰安葬工作室服务与口碑双佳推荐,告别仪式策划/宠物安葬礼仪/殡葬服务,骨灰安葬工作室排行榜单 - 品牌推荐师
  • 聚焦2026!市面上口碑好的镁球粘合厂家排行揭秘,玉米淀粉/淀粉/食用纯碱/超级生粉/小苏打,粘合剂公司推荐排行榜单 - 品牌推荐师
  • 告别无效堆砌!6款AI论文神器:真实参考文献+AIGC率低至7% - 麟书学长
  • HaiO安装与快速开始
  • YOLO26涨点改进 | 全网独家创新、细节涨点改进篇 | WACV 2025 | 引入SEFN空间增强前馈模块,有效补充了长程依赖建模中的局部空间感知缺陷,助力YOLO26有效涨点