DevToolkit

JSONPath 表达式测试工具

实时测试 JSONPath 表达式匹配结果

常见问题

JSONPath 是什么?

JSONPath 是一种类似 XPath 的查询语言,用路径表达式从 JSON 中提取数据,例如 `$.store.book[*].author` 会返回所有书的作者。常用于 API 测试、自动化脚本、CI 断言和日志聚合。

这个工具能做什么?

粘贴 JSON 数据和 JSONPath 表达式,工具会实时计算并展示匹配结果。对于 API 返回调试、ElasticSearch / MongoDB 查询思路验证、Postman 测试脚本编写都非常有帮助。

支持哪些语法特性?

支持主流 JSONPath 语法:`$`(根)、`.`(子元素)、`..`(递归下降)、`[*]`(所有元素)、`[?(@.key=='value')]`(过滤)、`[start:end]`(切片)。不同实现(Goessner、Jayway)在细节上略有差异,工具采用与 JavaScript 社区最广泛兼容的实现。

为什么我的过滤表达式不生效?

- 字符串值必须加引号:`@.price<10` 没问题,但字符串要写 `@.cat=='fiction'` - 属性名含特殊字符时需用 `['key']` 语法 - 不支持正则匹配(需用 `filter()` 等扩展) 工具会在表达式报错时给出提示。

数据会上传吗?

不会。JSON 数据与表达式在浏览器端求值,适合验证接口返回里的敏感字段。

JSONPath、JMESPath、JSONata 怎么选?

JSONPath 最普及,API Gateway / Kubernetes / Postman 都原生支持;JMESPath 是 AWS CLI 的内置查询语言,语法更严格;JSONata 接近 SQL,功能最强但学习成本高。一般场景选 JSONPath,复杂数据变换可考虑 JSONata。

相关工具