JSONPath 测试工具

使用强大的 JSONPath 表达式,精准提取和过滤复杂的 JSON 数据

JSON 原始数据
表达式与提取结果
常用示例: 所有书名 所有作者(递归) 所有价格 价格 < 10 的书 前两本书
提取结果将显示在此...

JSONPath:像使用 SQL 一样查询 JSON 数据

面临的挑战

在处理深层嵌套的 JSON 响应时,传统的代码写法需要多层 if 判断和循环。这不仅让代码变得臃肿难读,而且极易因为某个中间层级不存在而抛出“空指针”异常。

我们的解决方案

JSONPath 提供了一种声明式的语法,允许您用一行简单的字符串表达式描述想要的数据路径。无论是跨层级搜索还是条件过滤,JSONPath 都能以最高效的方式帮您完成数据提取。

JSONPath 核心语法指南

JSONPath 之于 JSON,正如 XPath 之于 XML。以下是您最常用的操作符:

  • $ : 根节点。所有的表达式都应该以此开头。
  • @ : 当前节点。通常用于过滤表达式中。
  • .[] : 子节点访问。
  • .. : 深层扫描(递归搜索)。可以跨越任意层级寻找目标字段。
  • * : 通配符。匹配所有元素或属性。
  • [?(expression)] : 过滤表达式。支持逻辑运算符(如 < , > , == , && )。

为什么使用 JSONPath Plus?

本工具采用了功能最全的 JSONPath Plus 引擎,相比于原始规范,它提供了更多高级功能:

  • 更强大的过滤 : 支持复杂的 JavaScript 逻辑判断。
  • 切片操作 : 类似于 Python 的 [start:end:step] ,方便提取数组子集。
  • 属性选择 : 支持 ~ 操作符获取键名而非键值。
  • 更健壮的容错 : 在路径不存在时返回空数组而非抛出异常,让您的逻辑更安全。

实战应用案例

  1. 日志分析 : 从海量的结构化日志中快速提取所有包含 level: "error" 的错误堆栈。
  2. 自动化测试 : 在接口测试脚本中,使用表达式断言返回体中的特定字段是否符合预期。
  3. 配置管理 : 从复杂的 K8s 定义或云服务配置中一键提取所有的容器镜像名称。
  4. 前端状态管理 : 在大型 Redux 或 Vuex Store 中,精准订阅深层嵌套的状态变更。

隐私与安全

本测试工具完全在本地浏览器运行。您的 JSON 数据和查询表达式绝不会被发送到云端。我们致力于为您提供一个私密、高效且纯净的开发辅助环境。