JSON 报错通常不是“整份数据都坏了”,而是解析器在某个字符处无法继续。最有效的处理方式是先确认输入确实是严格 JSON,修复第一个语法错误,再重新校验,而不是一次改动整段内容。
先分清 JSON 和 JavaScript 对象
JSON 是一种严格的数据交换格式,不等同于 JavaScript 对象字面量。属性名和字符串必须使用双引号;标准 JSON 不接受注释、尾随逗号、单引号、undefined、NaN 或函数。某段内容能写进 JavaScript 源码,不代表它能被 JSON.parse 或接口服务端接受。
{ name: 'ToolJSON', enabled: true, }{ "name": "ToolJSON", "enabled": true }6 类最常见的 JSON 格式错误
1. 属性名或字符串没有使用双引号
属性名不能省略引号,也不能用单引号代替。字符串内部如果包含双引号,需要写成 \",否则解析器会把字符串提前结束。
2. 最后一项后面多了逗号
{
"name": "ToolJSON",
}{
"name": "ToolJSON"
}对象最后一个属性、数组最后一个元素后面都不能保留逗号。这类错误常见于从 JavaScript 配置复制到 JSON 请求体时。
3. 反斜杠、换行或引号没有正确转义
JSON 字符串里的反斜杠本身需要转义。路径可写成 C:\\temp\\data.json;字符串中的换行应写成\n,不能直接插入未转义的控制字符。
4. 括号没有配对,或层级提前结束
对象使用花括号,数组使用方括号。嵌套较深时,先格式化已有的合法片段,再从内层向外核对括号;不要只数括号数量,还要确认关闭顺序正确。
5. 使用了 JSON 不支持的值
JSON 值只能是字符串、数字、对象、数组、true、false 或 null。需要表达“没有值”时使用null,不要使用 undefined;日期也通常以双方约定的字符串格式传递。
6. JSON 前后混入了其他文本
一份 JSON 文档只能有一个顶层值。日志前缀、Markdown 代码围栏、接口状态说明,或连续粘贴的两个对象都会导致解析失败。先只保留真正的数据部分再校验。
从报错到可复现结果的 4 步流程
- 1保留原始输入先复制一份原始响应或请求体,避免修复过程中丢失现场;同时记录接口、操作步骤和错误信息。
- 2校验第一个语法错误把数据粘贴到 JSON 格式化工具,点击“校验”,根据错误位置检查附近的引号、逗号和括号。
- 3每修一处就重新校验解析器通常只报告当前遇到的第一个错误。修复后再次校验,直到可以正常格式化,再检查字段和值是否仍符合预期。
- 4脱敏后分享最小复现删除令牌、Cookie、手机号和客户数据,只保留触发问题所需的最少字段,再生成分享链接交给协作者复现。
接口请求在浏览器里能看懂,服务端却返回 400
- 1.先把原始请求体另存一份,再粘贴到校验工具,不直接在生产请求中反复试改。
- 2.按校验顺序补上属性名双引号、转义备注中的引号,并删除最后一个属性后的逗号。
- 3.格式化后对照接口文档检查字段名和类型,最后用脱敏后的最小对象生成分享链接。
语法正确后,还要检查数据结构
JSON 校验通过,只说明语法可解析,不代表字段名、类型和业务约束正确。例如接口要求数字时传入字符串,或漏掉必填字段,仍可能返回 400。 结构稳定的接口可以继续使用 JSON Schema 工具 检查类型与必填项;需要迁移配置时,可用JSON 转换工具 在常见格式之间转换并复查结果。
| 能力 | 免费版 | Pro |
|---|---|---|
| 格式化、压缩与语法校验 | 本地完成 | 本地完成 |
| 键名排序、复制与下载 | 支持 | 支持 |
| 分享链接恢复现场 | 支持 | 支持 |
| AI 修复语法问题 | 直接生成修复结果 | |
| 结构分析与字段说明 | 生成分析结果 | |
| Schema 与类型定义 | 一键生成 |
升级 Pro,继续修复和理解复杂 JSON
PRO在本地校验基础上,生成修复结果、字段说明和 Schema 草稿,再由你核对后用于联调或文档。
- 生成 1 份 JSON 语法修复结果
- 输出字段说明与关键路径 2 类结构信息
- 生成 JSON Schema 与 TypeScript 类型定义 2 种产物
提交或分享前的检查清单
- 确认输入只有一个顶层 JSON 值,没有日志、注释或代码围栏;
- 先通过语法校验,再依据接口文档或 Schema 检查字段与类型;
- 对照原始数据确认格式化没有掩盖空值、重复键或单位问题;
- 分享前删除密钥、令牌、个人信息和不必要的业务数据。
常见问题
JSON 可以使用单引号吗?
为什么这段内容在 JavaScript 里能运行,JSON 校验却失败?
为什么修复一个错误后又出现新的错误?
JSON 校验通过就能直接提交接口吗?
JSON 分享链接可以发送真实接口数据吗?
先打开 JSON 格式化工具 试用内置错误示例;如果后续要把数据做成图表,可继续阅读数据图表分析与汇报指南,或回到 在线工具集首页 查找其他开发工具。