使用方法
- 粘贴 JSON、打开文件或尝试示例。
- 查看实时报告。选择问题即可定位。
- 修正输入后,复制或下载有效的 JSON。
语法检查,让下一步更明确
JSON 验证回答一个具体问题:这段文本能否作为一个 JSON 值读取?报告会指出缺少分隔符、值不完整、转义无效等语法问题。
警告标记可能被不同读取程序以不同方式解读的数据,例如重复属性名或超出 JavaScript 安全范围的整数。警告不会让语法有效的 JSON 变为无效。
什么是有效的 JSON?
文档包含一个 JSON 值:对象、数组、字符串、数字、布尔值或 null。属性名和字符串值必须使用双引号。对象或数组中的值用逗号分隔,最后一项后不加逗号。
JavaScript 表达式不是 JSON。这里不接受注释、undefined、NaN、Infinity、单引号及未加引号的属性名。
{
"name": "Ada",
"active": true,
}{
"name": "Ada",
"active": true
}移除右花括号前的最后一个逗号。验证工具负责定位问题,由你决定如何修正。
区分错误与警告
错误会阻止生成可用结果。选择错误位置可聚焦到相关输入;请先修复最早的错误,一个缺少的引号就可能导致后续多条诊断。
JSON 语法允许重复名称,但不同读取程序对使用哪个值的处理不一致。DevToolsy 保留每次出现的属性并发出警告。数值范围警告同样是在提醒读取程序的限制,而非语法错误。
语法验证与 Schema 验证
语法有效不代表 API 数据包含正确的字段或值。Schema 可以描述必需属性、值类型和其他约束。本验证工具检查语法及上述警告,不会验证 JSON Schema 或应用规则。
最多支持 5 MiB UTF-8 输入、20 MiB 输出、128 层嵌套、250,000 个扫描 token,每次运行最长 10 秒。较大的文档可能需要性能更好的设备。
常见问题
验证会自动运行吗?
会。输入短暂停顿后,报告便会更新。关闭“自动验证”后,可点击“验证 JSON”或按 Ctrl/⌘ + Enter 手动运行。输入内容保持不变。
有效的 JSON 必须是对象吗?
不是。顶层数组、字符串、数字、true、false 或 null 都是有效的 JSON 文档。空编辑器则不是。
重复键名是语法错误吗?
JSON 语法允许重复名称,但软件可能选择不同的值,也可能拒绝文档。这里将其显示为警告,并在导出时保留。
验证会检查我的 JSON Schema 吗?
不会。此工具检查严格 JSON 语法及互操作性警告,不检查必需字段、JSON Schema 或应用的业务规则。
验证工具会自动修复 JSON 吗?
不会。诊断指出需要查看的位置,选中后会聚焦到输入的对应部分。“错误示例”方便你快速试用,无需更改自己的数据。
为什么一个错误会产生多条提示?
缺少引号、逗号或右括号可能影响后续解析。请先修复第一个错误,等报告更新后再处理其余项目。
验证后可以导出什么?
JSON 有效时,可以复制或下载检查过的输入。原始空白和 token 均保留,但开头的字节顺序标记会在发出警告后移除。无效输入不能作为已验证结果导出。
JSON 会离开我的设备吗?
不会。粘贴的文本和本地文件都在浏览器中处理。DevToolsy 不会上传文档,也不保存文档历史记录。如需保留,请在离开页面前下载结果。