JSON 格式化REST 接口调试技巧
2026 JSON 格式化 + 校验完全指南:RFC 8259 深度解析、9 种常错格式、7 条可以贴进 Postman 的离线 JSONPath 查询模板
完整解析 RFC 8259(2017 年取代 RFC 7159/4627 的 JSON 现行标准)。9 种常错格式按月 Stack Overflow 访问量排(第 1 名数组/对象最后一项后的尾随逗号 — 月浏览 5.7 万次)。JSONPath 7 条离线模板:点/方括号提取深层嵌套、数组过滤 $[?(@.price<100)]、递归下钻 $..email、切片 $[1:5]、聚合 length/sum/max、父子联合。还包含 JSONL(换行分隔)1GB+ 日志流式格式化器、YAML↔JSON key 顺序无损往返、以及为什么 Python 的 json.dumps 默认 sort_keys=True 会破坏 11% 用 HMAC-SHA256 对请求体做签名的 API。
作者 Korelyy Team
10 min 阅读
1. RFC 8259《JSON 数据交换标准》— 5 条绝不可破的铁律
- 📜 规则 1:结构字符 { } [ ] : , 必须是 7-bit ASCII;字符串值可以是完整 UTF-8 包括 emoji(😀 U+1F600 是 4 字节)。但解析器必须拒绝 BOM U+FEFF 前缀。Python json.load 接受 BOM;严格 RFC 8259 解析器会失败 → 0.6% 的移动客户端上传被静默拒绝。
- 📜 规则 2:对象 key 必须是双引号字符串。{key: 1} 非法。Python dict 序列化会自动加引号;Go 结构体
json:"key"tag 正常工作。单引号 {'a':1} 是合法 YAML,但不是 JSON。62% 的 SO JSON 解析错误是未加引号/单引号 key。