如何使用 JSON path?
JSON path 是一种强大的 JSON 查询语言,允许您从 JSON 文档中精确选择和提取数据,类似于 XML 的 XPath。它提供了灵活的方式来导航和筛选 JSON 结构。
JSON For You 支持您进行在线 JSON path 处理,只需按如下步骤操作:
- 将 JSON 字符串粘贴到左侧编辑器中;
- 点击顶部的「搜索命令」,找到「展示 JSON path 过滤框」,点击后在底部会出现输入框;
- 输入 JSON path 表达式会自动执行;
- 在右侧编辑器可以查看结果;
- 当您需要多次编辑时,可以通过
Ctrl+Enter
快捷键快速交换左右两侧编辑器的文本;
JSON path 语法基础
表达式 | 描述 | 示例 |
---|---|---|
$ | 根对象 | $ |
@ | 当前对象 | @ |
| 子属性 | $.name |
| 下标运算符 | $[0] |
| 通配符(匹配所有元素) | $.store.book[*] |
| 递归下降 | $..price |
| 筛选表达式 | $..book[?(@.price < 10)] |
| 脚本表达式 | $..book[(@.length-1)] |
JSON path 实用示例
示例 1:基本属性访问
JSON 数据:
{
"name": "JSON For You",
"features": ["格式化", "验证", "JSON path"]
}
JSON path 表达式:$.name
,结果:"JSON For You"
示例 2:数组索引
JSON 数据:
{
"users": [
{ "id": 1, "name": "张三" },
{ "id": 2, "name": "李四" }
]
}
JSON path 表达式: $.users[1].name
,结果: "李四"
示例 3:条件筛选
JSON 数据:
{
"products": [
{ "id": 1, "name": "笔记本电脑", "price": 999 },
{ "id": 2, "name": "鼠标", "price": 25 },
{ "id": 3, "name": "键盘", "price": 50 }
]
}
JSON path 表达式:$.products[?(@.price < 100)]
,结果:返回鼠标和键盘对象
应用场景
- API 开发:从复杂的 API 响应中提取特定字段
- 数据分析︰筛选和聚合 JSON 数据用于报告
- 配置管理︰从嵌套的 JSON 配置文件中检索设置
- 测试自动化︰在 API测试中验证 JSON 响应
- 日志分析︰从 JSON 格式的日志中提取有意义的信息