Postman发送纯文本请求必须同时满足三条件:1. Headers中手动设置Content-Type: text/plain;2. Body选raw并下拉选择Text;3. 输入纯文本内容。缺一不可,否则后端因header不匹配或解析逻辑缺失而接收失败。

Postman 发送纯文本请求的关键,不是选对 Body 类型,而是让 Content-Type 和 raw 模式下的实际内容严格匹配——否则后端大概率收不到或解析为空。
为什么选 raw + Text 但后端还是收不到字符串?
常见错误是:Body 切到 raw、下拉选了 Text,却漏掉了 Headers 里手动加 Content-Type: text/plain。Postman 不会自动为 Text 格式补这个头,而多数后端(尤其是 Spring Boot、Flask、Express)依赖该 header 才启用字符串接收逻辑。
- Spring Boot 中若没配
@RequestBody String body或没设consumes = "text/plain",直接 415 错误 - Flask 默认不解析
text/plain,需用request.get_data(as_text=True) - Express 需要
body-parser显式启用type: 'text/plain'选项
如何在 Postman 中正确配置 text/plain 请求体
三步缺一不可,顺序不能乱:
- 方法选
POST或PUT,填好 URL - 点
Headers标签,新增一行:Content-Type→text/plain(注意大小写和斜杠) - 点
Body→ 选raw→ 右侧下拉框必须选Text(不是JSON或空着),然后直接输入纯文本,比如:Hello world或{"key":"value"}(此时仍是字符串,不是 JSON 对象)
⚠️ 注意:如果下拉选了 Text 但 Headers 里没设 Content-Type,Postman 实际发出去的 header 是 text/plain;charset=utf-8 —— 看似有,但某些老版本框架会因 charset 后缀拒收。
和其他 Body 模式的本质区别
raw 模式下选 Text 和选 JSON,表面只差一个下拉选项,底层行为完全不同:
Postman Mac版是一款专为macOS设计的API开发与测试工具,凭借简洁的界面和强大的功能,深受开发者喜爱。它支持发送各种HTTP请求(GET、POST、PUT等),轻松管理接口集合、环境变量和模拟服务器。Mac用户可享受原生性能、快捷键优化及与系统无缝集成的体验,适用于接口调试、自动化测试和文档生成。无论是个人项目还是团队协作,Postman for Mac都能提升API开发效率,是ma
- 选
Text:Postman 把你输入的内容原样当字节流发出,不校验、不转义、不加引号 - 选
JSON:Postman 自动加Content-Type: application/json,且编辑器会做语法高亮和格式校验;哪怕你输abc,它也当无效 JSON 处理(但依然发出去) - 用
x-www-form-urlencoded发纯文本?不行——它会把内容当键值对编码,abc变成abc=,后端收到的是 key=abc、value=null
所以“纯文本”这件事,只有 raw + Text + Content-Type: text/plain 这个组合能真正保真。
调试时容易忽略的细节
当响应是空或 400/415,别急着改代码,先确认这三点:
- Postman 控制台(View → Show Postman Console)里看实际发出的 request headers 是否含
Content-Type: text/plain,且没有被其他脚本覆盖 - 后端日志里打印原始输入流长度——如果是 0,说明请求体根本没传过来,大概率是 header 不匹配被中间件拦截了
- 如果文本含中文或特殊符号,确保 Postman 编辑器右下角显示编码是
UTF-8(默认就是,但曾有人误切到ISO-8859-1)
纯文本看似最简单,恰恰因为没结构、没 schema,header 和编码的微小偏差就会导致整条请求失效。










