我为何停止使用在线 JSON 格式化工具(并自己构建了一个)
Source: Dev.to
“噢不”时刻 😱
你在凌晨 2 点调试生产环境的问题。你从日志中抓取了一大段压缩的 JSON,去 Google 上找 “JSON Prettifier”,把数据粘贴到弹出的第一个结果中。
它完美地格式化了。你找到了 bug。太好了。
但就在 5 秒后,你突然意识到:
“等等……我刚才是不是把客户的 PII(个人身份信息)或生产环境的 API 密钥发送到了某个不知名的随机服务器?”
大多数免费在线工具都是黑盒。你根本不知道它们是否在记录你的输入、把数据存入数据库,或用来训练 AI 模型。
解决方案:本地(或客户端)🛡️
- 100 % 离线工作(数据永远不会离开你的机器)。
- 包含 Diff Checker(肉眼比对 2 000 行 JSON 几乎不可能)。
- 安全解码 JWT(不把 Auth Token 发送到云端)。
介绍 JSON AIO(All‑In‑One)🚀
在此尝试:
(它托管在 AWS CloudFront 上,但页面加载完成后,你可以断网,它仍能完美运行。)
内部实现 🛠️
- 引擎:
@monaco-editor/react,提供熟悉的 VS Code 体验(小地图、语法高亮、错误检测)。 - 架构: 零后端。全部使用标准 Web API(
JSON.parse、navigator.clipboard、localStorage)。 - 样式: Tailwind CSS,配备完整的暗/亮模式切换。
- PWA: 添加了 Service Worker,可将其安装到 Dock,像原生应用一样使用。
关键特性
“隐私盾” JWT 解码器
大多数 JWT 工具需要后端来解码 token。此工具直接在浏览器中使用 jwt-decode 库。安全粘贴你的生产 token——它们永远不会触发网络请求。
Diff Checker
集成的 Monaco Diff Editor 以并排方式比较 JSON 文件,像 Git 那样用绿色/红色高亮显示差异。
“智能”转换器
日志文件中 JSON 被字符串化在另一个字符串里?("{\"id\": 1...}") Converter 选项卡会自动进行转义解除和重新格式化。
开源且免费
试一试并告诉我你的感受!
在线工具: