json - 从确切的 JSONpath 级别获取值
问题描述
我想使用路径运算符从 JSON 文档中提取值。例如,我通过 $..product_id 获取文件中包含的所有产品 ID。但是为了在我使用 $..id 时获取“id”,无论变量位于 JSON 的哪个级别,我都会为每个 id 元素得到一个输出。例如,在我的输出中,我得到了 id 为“12345678”和“11223344”的行,这不应该是因为它是第一个 ID 的子集。
{
"next_offset": 20,
"records": [
{
"id": "12345678",
"date": "2020-02-14",
"product_id": "asdf1234",
"product_name": "Product_test^_1",
"template_link": {
"name": "aassddff",
"id": "11223344",
"_acl": {
"fields": [],
"_hash": "345thvz356b56v456b"
}
},
....
}
]
}
如何将路径运算符设置为仅访问一个特定级别的“id”字段?
解决方案
对于您的问题中显示的 JSON,请使用$.records.*.id
.
推荐阅读
- python - 自 Catalina 以来,在 Python 中截屏不再适用于 macOS
- ios - Swift - 锁匠将访问级别从 whenUnlocked 修改为 afterFirstUnlock
- php - 如何使用 PHP cURL 发布具有进度的文件
- kubernetes - 具有多个 kube-state-metrics 实例的重复指标
- javascript - 当扩展确实以 activeTab 权限启动时将内容脚本注入旧选项卡
- ios - Swift app returning a blank screen on ipads?
- traefik - 如何在同一个项目中使用 Traefik 和 Envoy 来处理 grpc-web?
- android - 将完整滚动视图内容转换为位图时出现黑色
- jquery - 使用 jQuery 从下拉列表中获取第一个选定的值
- html - 我在我的离子应用程序中使用反应形式它给出了错误