按 ⌘K 切换工具
VALIDATE & INSPECT
JSONPath评估工具
在JSON数据中评估JSONPath表达式。
jsonpath-finder
Examples: $..price, $.store.book[0], $..book[?(@.price>15)]
§01 关于此工具
概述
JSONPath 对 JSON 的作用,相当于 XPath 对 XML:一种从嵌套结构里取出特定值的查询语言。
这个求值器会在你输入的同时,对粘贴进来的 JSON 执行表达式——适合试写 jq 风格的
提取逻辑、编写 API 断言,或者排查代码里某条路径为什么返回空。
它的好处是不必把数据塞进脚本、也不必反复重启服务:先把一段真实响应粘进来, 把路径调对,再把这条路径抄回代码里。
使用方法
- 在 JSONPath 输入框里写表达式,例如
$.store.book[*].title。 - 把文档粘贴到 JSON 文本域。
- 匹配到的值会以格式化的 JSON 数组出现在 Result 里。两侧任一处的解析错误都会就地显示。
示例
- 对示例数据执行
$.store.book[*].title→["A", "B"] $..price→[10, 20](递归下降,取到每一个price键)$..book[?(@.price>15)]→ 价格高于 15 的那些 book 对象
说明
每次按键都会重新求值,因此很大的文档可能会显得迟滞。过滤表达式使用类似 JavaScript
的比较语法,注意 @ 指的是当前正在被判断的那个节点。路径写错通常不会报错,只会得到
一个空数组,所以调试时先用较短的路径确认结构,再逐段加长。如果结果里出现了预期之外
的值,通常是递归下降 .. 命中了嵌套更深处的同名键。
FAQ
我的 JSON 数据会被上传到什么地方吗?
不会。表达式完全在浏览器内通过 jsonpath-plus 库求值,你的 JSON 不会离开这个页面。
支持哪些 JSONPath 特性?
工具使用 jsonpath-plus,覆盖常见的 Goessner 语法:点号与方括号两种写法、通配符($.store.book[*])、递归下降($..price)、数组切片,以及 $..book[?(@.price>15)] 这样的过滤表达式。
为什么结果总是一个数组?
JSONPath 查询可能匹配到零个、一个或多个节点,所以结果以 JSON 数组的形式返回所有匹配到的值。空数组表示这条路径什么都没匹配上。