把接口响应变成可检查的数据
- 粘贴 JSON 或导入 UTF-8 文件,先看严格校验状态。语法或重复键错误会显示准确行列,点击即可定位。
- 按需要格式化、压缩或递归排序对象键。操作生成在右侧,原文留在左侧;“替换原文”可撤销。
- 使用结构树检查字段,复制 JSON Pointer 或字段值。对比时关闭实时格式化,右侧粘贴另一份接口响应。
- 确认数据后导出 JSON;产品表格可导出 CSV,再用电子表格分析。
大整数与重复键为什么值得检查?
订单 ID、Java long、精确小数与极大的指数数值可能被常规 JavaScript 数字解析改变。本工作台用 lossless-json 保存数值原文,例如 9123372036854000123、2.370 和 2.3e500 在处理后仍保留原有数字。树视图、键排序、差异与导出也使用同一份精度保护数据。
对象中重复的键可能被普通解析器静默覆盖。这里会将同一对象中的重复键作为校验错误,定位第二次出现的位置;不同对象出现相同键正常。JSON 对象键排序采用 Unicode 码元顺序;排序覆盖数字形式的键名,按文本顺序输出。
严格 JSON、JSON5 和 JavaScript 对象
本工具接收 RFC 8259 严格 JSON。注释、单引号、未加引号的键、尾随逗号、NaN、Infinity 与十六进制数字均不属于严格 JSON。JSON5 支持部分扩展,但不在这里自动修复或转换;工具不使用 eval,也不执行输入。
常见问题
为什么 1 和 1.0 被标为不同?
差异比较保留数字的原文形式,方便发现精度和序列化变化。对象键的顺序忽略;数组按照索引比较,不进行猜测性的对象配对。
路径是 JSONPath 吗?
这里使用标准 JSON Pointer:空路径代表根值,/products/0/sku 表示 products 数组第一个对象的 sku。键中的 / 写为 ~1,~ 写为 ~0;不支持 JSONPath 通配符和筛选表达式。
CSV 展平会丢失嵌套数据吗?
未展平时,嵌套对象和数组成为 JSON 文本单元格;展平时按 JSON Pointer 展开对象与数组,避免点号键名混淆。空对象与空数组仍保存为 {} 和 []。单次导出最多 20,000 行、1,000 列、500,000 个单元格与 4 MiB 输出。CSV 适合分析,不是 JSON 的无损双向存储格式。
为什么大文件没有自动显示全部结构?
为了保持浏览器响应,单份编辑输入最多 1 MiB、100,000 个值与 128 层嵌套。结构树按需展开,最多挂载 3,000 个字段;差异最多显示 500 项。单条字段路径最多 8,192 个字符,路径索引总长度最多 16 MiB。超过范围会明确提示,不会显示成完整成功结果。
草稿会保存到服务器吗?
JSON 输入、转换与草稿均在本浏览器处理。草稿默认关闭,手动启用后保存在 localStorage;同一设备的其他使用者可能查看,请避免存放密钥或客户隐私。广告按全站已有配置加载。
标准与实现参考
RFC 8259 · JSON · RFC 6901 · JSON Pointer · lossless-json · CodeMirror