语言
English English Vietnamese (Tiếng Việt) Vietnamese (Tiếng Việt) Chinese (简体中文) Chinese (简体中文) Portuguese (Brazil) (Português do Brasil) Portuguese (Brazil) (Português do Brasil) Spanish (Español) Spanish (Español) Indonesian (Bahasa Indonesia) Indonesian (Bahasa Indonesia)
JSON 路径查找器

JSON 路径查找器

通过在交互式树视图中点击节点来查找 JSONPath 表达式,或评估 JSONPath 查询以从 JSON 中提取数据。

JSON 路径查找器是什么?

JSON 路径查找器是一个交互式工具,可帮助您导航和查询 JSON 数据结构。无论您是使用 API 的开发人员、测试端点的 QA 工程师,还是探索数据集的数据分析师,此工具都可以轻松找到 JSON 中任何数据片段的确切路径。

什么是 JSONPath?

JSONPath 是 JSON 的查询语言,类似于 XML 的 XPath。它允许您使用简单的表达式语法指定 JSON 文档中元素的路径。例如,$.store.book[0].title 指的是商店对象中第一本书的标题。

两种强大的模式

查找路径

点击可视树中的任何节点,立即查看其 JSONPath 表达式。非常适合快速识别所需的路径。

评估

输入 JSONPath 表达式并立即查看匹配的结果。非常适合在代码中使用查询之前进行测试。

您的数据保持私密

100% 客户端处理:所有处理都在您的浏览器中进行。您的 JSON 数据永远不会离开您的设备,我们不会收集或存储您输入的任何信息。
  • 无上传 — 您的 JSON 数据永远不会离开您的设备
  • 无跟踪 — 我们不会收集或存储您输入的任何数据
  • 完全隐私 — 一切都在您的浏览器中本地运行

如何使用 JSON 路径查找器

入门指南

1

加载您的 JSON 数据

将您的 JSON 数据粘贴到左侧的输入面板中,或点击 示例 按钮加载示例数据。您也可以使用 上传 按钮从您的设备加载 .json 文件。

2

查看树结构

右侧的树视图将自动显示解析后的 JSON 结构,具有颜色编码的数据类型和可折叠的节点。

3

点击获取路径

点击树视图中的任何键、值或数组元素。路径栏将显示该节点的 JSONPath 表达式,随时可以复制。

查找路径(查找路径模式)

查找路径模式非常适合通过可视化探索发现 JSONPath 表达式:

  • 确保在工具栏中选择了 查找路径 模式
  • 点击树视图中的任何键、值或数组元素
  • 路径栏将显示该节点的 JSONPath 表达式
  • 点击 复制 将路径复制到您的剪贴板

评估表达式(评估模式)

评估模式让您测试 JSONPath 查询并实时查看结果:

  • 使用工具栏切换开关切换到 评估 模式
  • 在输入字段中输入 JSONPath 表达式(例如 $.store.book[?(@.price < 10)]
  • Enter 或点击 运行 按钮
  • 查看下方的匹配结果,包括匹配数量
  • 点击 复制 复制结果
专业提示:使用 点号/括号 切换在表示法样式之间切换。点号表示法($.store.book[0].title)更简洁,而括号表示法($['store']['book'][0]['title'])适用于键中的特殊字符。

功能

交互式树视图

您的 JSON 显示为具有颜色编码数据类型的可折叠树,便于导航。

  • 带有紫色徽章的对象(键计数)
  • 带有绿色徽章的数组(元素计数)
  • 字符串、数字、布尔值和空值的不同颜色
  • 用于大型结构的展开/折叠控件

点击获取路径

只需点击树中的任何节点即可立即获得其 JSONPath 表达式。

  • 实时路径更新
  • 一键复制到剪贴板
  • 适用于嵌套结构
  • 支持两种表示法样式

JSONPath 评估器

测试 JSONPath 表达式并通过完整的语法支持立即查看结果。

  • 子访问和通配符
  • 数组索引和切片
  • 递归搜索
  • 高级过滤

支持的 JSONPath 语法

评估器支持全面的 JSONPath 功能:

功能 语法 示例
子访问 $.key$['key'] $.store.name
数组索引 $[index] $.book[0]$.book[-1]
通配符 $.*$[*] $.store.*$.book[*]
递归搜索 $.. $..author
数组切片 $[start:end:step] $.book[0:3]$.book[0:6:2]
过滤器 [?(@.field operator value)] $.book[?(@.price < 10)]

其他工具

表示法切换

只需单击一下即可在点号表示法和括号表示法之间切换。选择最适合您用例的样式。

JSONPath 速查表

点击 ? 按钮打开包含常见 JSONPath 表达式及其描述的快速参考表。

智能树控件

使用 展开全部折叠全部 按钮快速导航大型 JSON 结构。

常见问题

什么是 JSONPath 表达式?

JSONPath 表达式是一个字符串,描述 JSON 文档中一个或多个元素的路径。它始终以 $(根元素)开头,并使用点或括号更深入地导航结构。

示例:$.users[0].name 获取用户数组中第一个用户的名称。

点号表示法和括号表示法有什么区别?

点号表示法

$.store.name

  • 更短更易读
  • 仅适用于简单的字母数字键
  • 无法处理特殊字符
括号表示法

$['store']['name']

  • 适用于任何键
  • 处理特殊字符、空格、连字符
  • 更冗长但更灵活

我如何过滤数组元素?

使用过滤器语法 [?(@.field operator value)],其中 @ 表示正在评估的当前元素。

常见过滤器示例:

  • $.products[?(@.price < 50)] — 价格低于 50 的产品
  • $.users[?(@.active == true)] — 仅活跃用户
  • $.items[?(@.category == 'electronics')] — 特定类别中的项目
  • $.orders[?(@.quantity >= 10)] — 包含 10 个或更多项目的订单

.. 运算符有什么作用?

双点(..)执行递归搜索,遍历整个 JSON 结构,查看每个嵌套级别。

示例:$..name 查找所有键为 "name" 的值,无论它们出现在层次结构中的何处 — 无论是在根级别、嵌套在对象中,还是深入数组中。

性能说明:递归搜索在非常大的 JSON 文档上可能很慢,因为它检查树中的每个节点。

我可以使用负数组索引吗?

可以。负索引从数组末尾开始计数,无需知道数组长度即可轻松访问末尾的元素。

  • $.array[-1] 返回最后一个元素
  • $.array[-2] 返回倒数第二个元素
  • $.array[-3] 返回倒数第三个元素

我的数据安全吗?

绝对安全。所有 JSON 解析和 JSONPath 评估完全在您的浏览器中使用 JavaScript 进行。您的数据永远不会离开您的设备。

  • 无服务器上传 — 一切都在客户端运行
  • 无数据存储 — 关闭页面后不保存任何内容
  • 无跟踪或分析您的 JSON 内容
  • 完全隐私和安全

支持的最大 JSON 大小是多少?

该工具没有硬性限制,但非常大的 JSON 文件可能会因树渲染和 DOM 操作而影响浏览器性能。

最佳性能 < 1 MB
可能变慢 1-10 MB
性能问题 > 10 MB

建议:为获得最佳性能,请将 JSON 保持在几兆字节以下。如果您使用非常大的文件,请考虑提取和测试较小的部分。

JSONPath 速查表
表达式 说明
$根对象
$.key子属性
$..key递归搜索
$.arr[0]数组索引
$.arr[-1]最后元素
$.arr[*]所有元素
$.arr[0:3]数组切片
$.arr[?(@.price<10)]过滤表达式
$.obj.*所有值
Input
树状视图

粘贴JSON以查看结构

Path
$
查询

            
| |
点击树中的任何节点即可立即获得其 JSONPath 表达式
使用切换开关在 点号括号 表示法之间切换
使用 评估模式 运行 JSONPath 查询并提取匹配的数据
尝试 $.store.book[?(@.price < 10)] 按价格过滤书籍
使用 $..author 查找任何深度的所有作者
在表达式输入框中按 Enter 运行查询
点击 ? 按钮查看 JSONPath 速查表
所有处理都在您的浏览器中进行 - 数据不会发送到任何服务器
想了解更多? 阅读文档 →
1/9
开始输入以搜索...
搜索中...
未找到结果
请尝试使用不同的关键词搜索