OpenReplay Logo
12k
12k

JSON 校验器

校验 JSON 并按行和列精确定位语法错误——在浏览器中本地处理,任何内容都不会上传。

本地处理

关于此工具

JSON(JavaScript Object Notation)是一种用于结构化数据的文本格式,由对象、数组、字符串、数字、布尔值和 null 构成。只有当每一对花括号和方括号都配对、键使用双引号、字符串使用有效转义、且没有尾随逗号时,文档才有效——这些正是浏览器和 API 通过其内置解析器强制执行的规则。本校验器会让你的输入经过同一个 JSON.parse 引擎,因此这里的结果与你的应用将接受或拒绝的结果完全一致。

用它调试一个无法反序列化的 API 响应,在部署前检查配置文件,或对你手动编辑过的载荷做一次校验。粘贴你的 JSON,它会随着你的输入实时校验:有效的文档会得到一份统计摘要(根类型、顶层键或元素数量、最大嵌套深度以及字节大小),而无效的文档会得到解析器消息,外加精确的行号与列号以及一段在出错字符下带有插入符的上下文片段。点击 Format 可就地美化有效的 JSON。

一切都在你的浏览器中运行——你的 JSON 永远不会发送到服务器,因此校验包含令牌、密钥或个人数据的载荷是安全的。

常见问题

为什么我的 JSON 看起来正确却被判为无效?

最常见的原因是尾随逗号(例如 [1,2,])、未加引号或使用单引号的键、单引号字符串以及注释——这些在 JavaScript 中有效,但会被 JSON 拒绝。校验器会报告解析失败的精确行号和列号,让你能找出出错的字符。

本校验器会按照某个 schema 校验 JSON 吗?

不会。它只检查 JSON 语法——即文本是否格式良好、能否被标准 JSON 解析器解析。它不会对照 JSON Schema 校验结构或类型;要做到那一点,你需要一个单独的 schema 校验步骤。

可校验的 JSON 有大小限制吗?

没有固定限制,因为校验完全在你的浏览器中进行,但非常大的文档(数兆字节)可能解析较慢,因为它们运行在主线程上。任何内容都不会上传,所以唯一的约束是你设备的内存。