ToolGen

开发工具

JSONPath 查询在线工具

JSONPath 查询工具按照 RFC 9535 为主的路径语义,从嵌套 JSON 中筛选节点,并同时展示匹配值、规范路径和 JSON Pointer。

功能介绍

接口响应和配置文件层级较深时,手动展开对象寻找字段既慢又容易遗漏。JSONPath 用一条表达式描述要选择的节点,例如 $.store.book[*].title 可以提取数组中所有书名,$..price 可以递归查找任意层级的价格字段。本工具以 RFC 9535 的标准语义为主要基线,在浏览器内完成查询。

查询结果不仅展示值,还给出每个节点的规范 JSONPath 和 JSON Pointer。路径信息适合定位原始数据、编写测试断言或转换成其他程序的访问方式。结果可整体复制,并能根据当前表达式生成 JavaScript、Python 和命令行代码片段,减少重复转写。

使用方法

  1. 把接口响应或配置 JSON 粘贴到左侧输入区,内容停止变化 400ms 后会自动解析;
  2. 在右侧输入以 $ 开头的 JSONPath,也可以点击字段、过滤、递归或切片示例快速体验;
  3. 在匹配值和路径视图之间切换,核对节点类型、规范路径与 JSON Pointer;
  4. 复制全部结果或路径清单,代码片段页可复制当前表达式对应的常见语言写法。

注意事项

  • 过滤表达式使用库提供的浏览器安全求值器,不使用原生 eval 或 Function;不应把来源不明的复杂扩展语法当作安全规则。
  • 单份 JSON 限制为 300 KB,最多展示 500 个匹配节点,适合调试和日常查询,不用于替代流式大数据处理。
  • JSON 与表达式只在浏览器本地处理,产品事件不包含输入、表达式、路径或结果值。

常见使用场景

  • 从接口响应中批量提取字段值
  • 定位嵌套对象和数组中的目标节点
  • 调试 JSONPath 过滤与切片表达式
  • 生成 JavaScript、Python 和命令行查询片段

常见问题

JSONPath 和 JSON Pointer 有什么区别?

JSONPath 可以使用通配符、切片、递归和过滤一次选择多个节点;JSON Pointer 通常精确指向一个已知位置。结果页会同时给出两种路径表示。

JSONPath 查询会上传数据吗?

不会。JSON 解析、表达式执行和结果生成均在当前浏览器中完成,输入与匹配结果不会发送到服务器。

为什么最多只展示 500 个结果?

结果数量设有上限,避免通配符或递归查询在大型 JSON 上产生过多 DOM 节点并阻塞页面。工具仍会显示实际匹配总数。

相关工具