JSON 在线格式化

本地处理
app.formatter.view

也可通过 #data={"name":"Ada"}#url=... 灌入数据,读完即从地址栏清除。

把挤成一行的接口响应展开成可读结构。粘贴后自动校验语法、按缩进排版,并可选择按 Key 排序。全部在当前标签页完成,适合调试生产报文时不想把数据传到第三方网站的场景。Network 面板里复制下来的压缩 JSON、日志里的单行报文,都可以直接贴进来看层级。

自动美化

识别对象、数组和嵌套层级,按 2 / 4 空格或 Tab 缩进。嵌套越深,缩进越能帮你对齐同级字段,避免靠肉眼数括号。

和编辑器里的 Prettier / 语言服务效果类似,但不需要新建文件或安装插件,适合临时看一眼响应体。

语法检查

括号不配、逗号缺失或多余时,会停在输入侧并提示错误。常见问题还包括单引号、未加引号的键名、以及从 JS 对象字面量直接复制过来的尾逗号。

若源文本本身是 JSON5(带注释),请先用 JSON5 工具转成标准 JSON,再回来格式化。

地址栏灌入

可用 #data={...}#url= 打开页面即填入,读完会从地址栏清除。适合从文档、工单或脚本里拼一个可分享的链接,对方打开就能看到同一份数据。

远程 #url= 受浏览器 CORS 限制,本站静态文件或已开放跨域的地址才能拉取成功。

示例

输入(压缩后)
 {"user":{"id":1001,"name":"张三","roles":["admin","editor"]}} 
格式化结果
{
  "user": {
    "id": 1001,
    "name": "张三",
    "roles": [
      "admin",
      "editor"
    ]
  }
}
会改我的字段值吗?

不会。只调整空白和换行;勾选「排序 Key」时才会重排对象键的顺序,值保持不变。

和压缩工具有什么区别?

格式化面向阅读; 压缩 面向传输。两者可来回切换。

数据会上传吗?

不会。解析和排版都在当前浏览器内存中完成,刷新或关闭标签页后内容即消失。

适合多大的文件?

数 MB 以内一般没问题。超过约 2 MB 可能变慢并提示警告;超过 10 MB 建议拆分或用 jq 等本地 CLI。

推荐工作流

  1. 从接口、日志或剪贴板把原始 JSON 贴进左侧输入区,或点「加载示例」先熟悉界面。
  2. 确认语法通过后,选择 2 空格、4 空格或 Tab;需要和另一份对比时再勾选「排序 Key」。
  3. 用「复制」把美化结果带回编辑器、工单或测试用例;生产环境再改用压缩页去掉空白。
  4. 结构很深时切到树形查看;只想抽出某几个字段时用 JSONPath。

联调时建议养成「先格式化看清结构,再 Diff 或转 YAML」的习惯,比直接在压缩单行上改字段更不容易漏层级。