JSON 数据会上传到服务器吗?
不会。解析、格式化、树形展示和复制都在浏览器本地通过 JavaScript 完成,页面没有后端接口,也不会把你粘贴的内容发送到任何服务器。适合查看包含内部字段的接口返回、日志片段和配置文件。用“JSON 网址”拉取时也一样不经过本站:请求是你的浏览器直接发给那个地址的。当然,那台服务器本身会看到这次访问,所以内网地址和链接里带 token 的接口请自己斟酌。
data.items[0].id)与对应的值。两者改的只是空白字符,数据本身一模一样。格式化是加上换行和缩进给人看的,调接口、看日志、审配置文件的时候用;压缩是把所有多余空白去掉,减小体积,写进请求体、存进数据库或塞进环境变量的时候用。一段挤成一行的 JSON 不是「坏掉了」,只是没有为阅读排版,粘进来格式化一下即可。手上如果是两份配置要并成一份,那是JSON 合并要做的事,这一页只负责把单份 JSON 排开看清楚。
按出现频率大致是:最后一个元素后面多了一个逗号;用了单引号而不是双引号;写了双斜杠注释;键名没加引号;值里出现了 NaN、undefined 或者 Python 风格的 True / None;字符串里有没转义的换行或反斜杠。这些写法在 JavaScript 或 Python 源码里都合法,但 JSON 标准不接受,从代码里复制片段过来时尤其容易踩到。还有一种看不见的情况是文件开头带 BOM 或不可见空白,从记事本另存或从网页复制时可能混进来。
真实接口返回常常嵌套五六层,光靠缩进翻找很累。树形视图可以把不关心的分支折叠起来,一眼看清数组有多少个元素、某个字段在第几层,也能直接把节点路径复制出来贴到代码里。排查线上问题时,日志里的 JSON 往往是被当成字符串再次嵌套的,带着一堆反斜杠,先去转义再解析就能正常展开。
JSON 是一种数据交换格式,只有对象、数组、字符串、数字、布尔和 null 六种类型,键必须用双引号包起来,不允许函数、日期对象、注释和尾随逗号。JavaScript 的对象字面量比它宽松得多。另外 JSON 数字没有精度上限的规定,而多数解析器按双精度浮点处理,超过 2 的 53 次方的整数(比如雪花算法生成的 ID)会丢失末尾几位,这类字段建议在接口里就用字符串传。
不会。解析、格式化、树形展示和复制都在浏览器本地通过 JavaScript 完成,页面没有后端接口,也不会把你粘贴的内容发送到任何服务器。适合查看包含内部字段的接口返回、日志片段和配置文件。用“JSON 网址”拉取时也一样不经过本站:请求是你的浏览器直接发给那个地址的。当然,那台服务器本身会看到这次访问,所以内网地址和链接里带 token 的接口请自己斟酌。
可以。把地址填进顶部的“JSON 网址”栏,点“获取”或直接按回车,内容会拉下来放进左边并立刻解析;只写 example.com/data.json 这样的裸地址也行,会自动补上 https://。前提是那个地址允许跨域访问 —— 浏览器只有在响应里看到 Access-Control-Allow-Origin 才会把内容交给页面。raw.githubusercontent.com、jsDelivr 和多数公开 API 都满足,公司内网接口和需要登录的接口通常不满足。
大多数时候是跨域被拦。浏览器出于安全考虑不会把失败原因告诉页面,只给一个笼统的错误,所以工具也只能笼统地提示 —— 按 F12 打开控制台,真正的原因写在那里。如果确认是跨域,页面这边没有办法绕过:本站是纯静态的,没有后端可以代抓,也不会把你的网址转发给第三方代理服务,那等于把地址连同里面可能带的 token 一起交出去。可行的办法是把 JSON 下载到本地再粘进来,或者用 curl 取下来。另外,http 开头的地址在本页(https)会被浏览器当成混合内容直接拦掉,请求根本发不出去。
不能,这是浏览器的硬性限制。Referer 属于“禁止修改的请求头”,页面脚本给它赋值会被静默忽略;fetch 另有一个 referrer 选项,但只要填的是别人的域名,浏览器同样会悄悄换回本页自己的地址 —— 两种写法都不报错,只是不生效。所以网页里声称能伪造 Referer 的工具,背后一定有一台服务器在替你发请求。页面真正能选的只有两种:按默认发送本站来路,或者勾上“不发送 Referer”一个都不发 —— 后者对某些拿来路做防盗链的地址有用。
右侧会显示浏览器报出的错误信息以及大致的行号和列号。常见原因包括:使用了单引号而不是双引号、键名没有加引号、最后一个元素多了逗号、内容里混入了注释,或者复制时把 JSON 截断了。按提示定位到对应位置修正即可。
树形结构需要为每个节点生成一个 DOM 元素,节点数量非常多时渲染会变慢。工具对超大文档默认只展开前几层,其余部分保持折叠状态,展开时再渲染,可以显著减少卡顿。如果文件特别大,建议先截取关心的片段再查看。
有些日志或数据库字段会把一段 JSON 当成字符串保存,内容里全是 \" 这样的反斜杠。点“去转义”可以把这种字符串还原成正常 JSON 再解析;反过来点“转义”,则把当前 JSON 转成可以嵌进字符串里的形式。
可以。鼠标悬停到任意节点行,右侧会出现复制图标,点击后复制该节点的访问路径,例如 data.items[0].name,可以直接粘贴到代码或调试工具里使用。按住 Shift 再点击则复制该节点的值。
解析使用浏览器内置的标准 JSON.parse,因此只支持标准 JSON 语法,不支持注释、单引号、尾随逗号和未加引号的键名。如果你的内容属于 JSON5 / JSONC,需要先手动去掉这些扩展写法。
JavaScript 的数字精度有限,超过 2^53 的整数(例如某些雪花 ID)在解析后可能出现末尾几位变化。这是所有基于 JSON.parse 的工具的共同限制。遇到这类字段,建议在服务端把 ID 用字符串类型返回。
多半是 Unix 时间戳。10 位是秒、13 位是毫秒,格式化之后仍然是一串数字,树形视图不会替你翻译它。把它粘到时间戳转换里就能看到对应的日期,也能反过来把日期转成时间戳去构造请求参数。