在线 JSON 格式化与处理工具:开发者的日常必备
调试接口的时候,返回的 JSON 往往是压缩成一行的,甚至还有转义嵌套。多数在线格式化工具只能做最基础的美化,遇到嵌套五六层的结构,或者两个版本接口返回的差异,就很难处理了。这个工具从实际开发中遇到的麻烦出发,在格式化的基础上多做了几件事。
路径定位:不用再数括号
JSON 嵌套层级深了以后,找到某个字段的访问路径是件麻烦事。这里的树形预览支持点击任意节点,路径栏会立即显示完整路径,格式和 JavaScript 里的写法一致,例如 root.data.list[0].title。点「复制路径」就能直接粘进代码,省去手动拼接的步骤。路径栏也支持反向操作——手动输入路径后按 Enter,树形视图会定位并高亮到对应节点。
语义 Diff:键顺序不同不算差异
普通文本对比工具把 JSON 当纯文本处理,两个字段顺序不同但内容相同的 JSON,会被判定为大量差异。这里做的是结构级对比——先分别解析两个 JSON,再递归逐字段比较,只关心值有没有变化,不在乎键的排列顺序。{"a":1,"b":2} 和 {"b":2,"a":1} 会被认为完全相同。在对接不同语言写的接口时,这个差别很明显:Go、Python、Java 序列化出来的字段顺序不一样,文本对比会产生大量无意义的误报。
JSON Schema 推断:接口文档的起点
写接口文档时,从一份真实的响应样本推断出字段结构,比从零开始手写省事很多。把 JSON 粘进 Schema 页,点「生成 Schema」,工具会递归分析每个字段的类型,对字符串格式还会尝试识别 date-time、uri、email 等常见格式并自动加上 format 属性。推断结果是个合理的起点,建议结合业务实际补充描述和约束后再作为正式 Schema 使用。
表格视图与 CSV 导出
接口返回的数据里经常有数组结构,比如列表页的分页数据。切到表格视图,工具会自动识别 JSON 里的数组并转成表格,支持按列名筛选。确认没问题后可以直接导出 CSV,适合快速传给数据同学做进一步分析,不用手写脚本转格式。
大文件处理与数据安全
超过 400KB 的 JSON 会自动交给 Web Worker 在后台解析,主线程不阻塞,页面继续响应。实测处理 5MB 左右的文件正常工作。所有处理均在浏览器本地完成,JSON 数据不会上传到任何服务器。唯一的网络请求是可选的 AI 字段解释功能——需要你自己填入 OpenAI 兼容的 API Key,调用走的是你的账户,本工具不经手、不存储。
常见问题
不会。格式化、校验、Diff 对比、Schema 推断全部在你的浏览器里完成,数据从不离开你的设备。唯一的例外是 AI 字段解释:如果你配置了 API Key,字段名和值示例会发送到你填写的 AI 接口(如 OpenAI),由你自己的账户控制,本工具不经手。
没有硬性上限。400KB 以下在主线程直接处理,超过后自动切换到 Web Worker 后台解析,页面不会失去响应。实测处理 5MB 左右的 JSON 文件正常工作,10MB 也不会崩溃,只是速度取决于设备性能。
对象字段用点连接,例如 root.data.user.name;数组下标用方括号,例如 root.data.list[0].title。这和 JavaScript 里访问嵌套对象的写法保持一致,复制后可以直接粘到代码里用。路径栏也支持手动输入,按 Enter 会在树形视图里定位到对应节点并高亮。
普通文本比对只看字符,键顺序不同就判定为不同。这里会先分别解析两个 JSON,再递归逐字段对比,只关心值有没有变化,不管字段顺序。{"a":1,"b":2} 和 {"b":2,"a":1} 会被判定为完全相同。在实际工作里很实用——不同语言序列化 JSON 时字段顺序往往不一致,这种情况下文本对比会产生大量误报。
推断基于你提供的样本。如果某个字段在样本里是 null,推断出的类型就是 null,不代表这是该字段的真实类型。数组会取前几个元素合并推断。工具还会识别 date-time、uri、email 等常见字符串格式,自动加 format 属性。整体来说推断结果是个合理的起点,建议结合业务实际调整后再作为正式 Schema 使用。
工具本身完全免费,没有任何收费计划。AI 解释功能需要你自己的 OpenAI 兼容 API Key,费用由你的 API 账户承担。在树形视图里鼠标悬停到任意节点,右侧会出现「AI 解释」按钮,点击后先查询内置词典(涵盖 code、msg、data、timestamp、userId 等几十个常见字段),未命中再调用 AI。没有配置 API Key 也能用,只是只能查内置词典覆盖的字段。