响应体乱码或空白是因视图不匹配,应切至Raw视图查看原始字节;若中文异常则需确认服务端编码并补全Content-Type: text/plain; charset=utf-8。

响应体显示为乱码或空白,其实是没切对视图
Postman 默认会根据 Content-Type 自动选择渲染方式。如果接口返回纯文本(比如 text/plain、text/csv 或没有设置 Content-Type),但你卡在 Pretty 视图里,就会看到“无法格式化”或一片灰白——这不是数据丢了,是视图不匹配。
解决方法很简单:切换到 Raw 视图。它不解析、不格式化,原样输出响应 body 的每一个字节,包括换行、空格、BOM 头。特别适合检查日志接口、调试脚本输出、或验证服务是否真的返回了预期的字符串(比如 "OK" 或 "success")。
- 快捷键:
Ctrl+R(Windows/Linux)或Cmd+R(macOS)直接切到Raw - 别依赖
Pretty搜索功能查纯文本——它只在 JSON/XML 下生效,其他类型下搜索框不可用 - 如果
Raw里看到中文是方块或问号,大概率是服务端用了GBK编码但 Postman 按UTF-8解,此时需确认接口文档编码约定,或让后端补charset=utf-8到Content-Type: text/plain; charset=utf-8
用 Test Script 断言纯文本内容是否准确
纯文本响应没法像 JSON 那样取字段,但可以用字符串匹配做精准校验。关键是别用 pm.response.json()——它会在非 JSON 响应上直接报错 SyntaxError: Unexpected token。
正确做法是读原始文本再比对:
Postman 12.27.7 Windows x64 官方安装包,适用于 API 设计、调试、测试与协作。该系列包含 Enterprise 云端性能测试静态 IP 出口能力,以及接口规范标签管理改进,适合受限网络测试与规范资源组织场景。
pm.test("Response is exactly 'OK'", function () {
pm.expect(pm.response.text()).to.equal("OK");
});
pm.test("Response contains timestamp", function () {
const body = pm.response.text();
pm.expect(body).to.include("2026-11-");
});
-
pm.response.text()安全读取任意响应体,返回字符串;pm.response.json()只能用于合法 JSON - 用
.to.equal()做全等判断(含换行、空格),用.to.include()做子串检查 - 如果响应带 BOM(比如 UTF-8 with BOM),
pm.response.text()会把\uFEFF当作首字符,导致.equal("OK")失败——此时改用.includes("OK")或手动.trimStart()
下载纯文本响应保存为 .txt 文件
有些接口返回的是可执行脚本、配置片段或日志快照,需要落地成文件再交给运维或分析工具。Postman 不支持直接“另存为 .txt”,但有可靠路径:
- 先确保响应状态码是
200,且Content-Type明确为text/plain(否则可能被当 HTML 渲染) - 点击响应区右上角的
Save Response→Save as file - 在保存对话框中,**手动输入文件名并加上
.txt后缀**(例如config-output.txt),否则系统可能默认存为无后缀或.bin - 验证:用记事本或
cat打开,确认换行和中文正常;若仍是乱码,说明服务端编码与文件保存时的系统默认编码不一致,需统一用 UTF-8
响应头缺失导致 Raw 视图显示异常
Postman 对纯文本的处理高度依赖响应头。常见坑是后端没设 Content-Type,或设成了 application/octet-stream 这类通用二进制类型——这时 Raw 视图虽能显示内容,但字体变小、无换行高亮,甚至自动截断长行。
临时解法是在 Postman 设置里强制语言检测:
- 点击右上角设置图标(⚙️)→
Settings→General选项卡 - 找到
Language detection下拉菜单,选Plain Text或JSON(后者对带结构的纯文本如 YAML 更友好) - 这个设置是全局的,会影响所有请求——如果团队共用同一台机器,建议仅临时切换,验证完就切回
Auto
根本解法是推动后端补全响应头,尤其 Content-Type: text/plain; charset=utf-8。没有这个头,不同客户端(curl / browser / Postman)对同一响应的解释可能完全不同。

















