JSONPath Builder 是在创建 REST API 主动和性能监控工具以及 REST API 主动和性能应用程序监控 (APM) 组件时使用的辅助实用程序。该工具帮助用户选择他们想要监控的 JSON 元素,并为所选的 JSON 元素生成一个 JSONPath 查询。
JSONPath 查询可以采用两种样式书写,即括号表示法和点表示法,例如:
[‘name’]
$.name
本主题介绍 JSONPath Builder 工具的工作流和支持的语法。
当您从监控工具库添加新的 REST API 性能监控工具时,添加 REST API 性能监控工具窗口将打开。此窗口包含两个相关部分, REST API 和 JSONPATH ,它们在 JSONPath Builder 工具中使用。
提供 REST API 性能监控工具名称、描述和超时值,然后按照以下步骤使用 JSONPath Builder 工具:
当您从监控工具库添加新的 REST API 活动监控工具时,添加 REST API 主动监控工具窗口将打开。此窗口包含两个相关部分:REST API 和脱机条件 ,其中包括 JSONPath 查询 网格作为为监控工具添加脱机条件的方法。在选择放大镜按钮时,JSONPath 查询网格会使用 JSONPath Builder。
在使用 REST API 主动监控工具时,您可以定义多个 JSONPath 查询来评估监控工具的脱机状态。此外,与性能监控工具不同,主动监控工具支持针对数字、布尔和字符串类型的变量验证脱机条件。
在 JSONPath Builder 中选择 JSON 元素后,JSONPath 查询网格会自动检测元素的类型,并将其输入到 JSONPath 查询网格的类型列中。
提供 REST API 主动监控工具名称、描述和超时值,然后按照以下步骤使用 JSONPath Builder 工具:
REST API 性能应用程序监控 (APM) 组件的工作方式与 REST API 性能监控工具类似,但增加了数值响应的警告和脱机阈值条件。REST API APM 组件可以附加到测试设备并进行验证。下图显示示例数字 API 端点以及警告和脱机阈值:
REST API 主动应用程序监控 (APM) 组件的工作方式与 REST API 主动监控工具类似,只是增加了一个测试设备,REST API 主动 APM 组件可以连接到该设备并验证监控工具。
如上所述,JSONPath 查询可以采用两种样式书写,即括号表示法和点表示法,例如:
[‘name’]
$.name
如果有一个 JSON 数组“books”,其中数组中的第一项名称为“The Cat in the Hat”,则可以通过输入以下任一 JSON 查询来访问该值:
[‘books’][0]['name']
$.books[0].name
除了支持使用 JSONPath Builder 为 JSON 元素生成 JSONPath 查询之外,您还可以编写高级查询以使用 JSONPath 查询中的过滤条件来验证 JSON 响应。过滤条件可用于执行使用比较运算符的操作。此外,“length”属性可用于返回 JSON 数组的长度。
这些属性可用于 JSONPath 查询过滤条件,以根据条件返回值并过滤掉不需要的值。
Note:如果捕获的对象长度为 1,则标记选择器将仅返回一个值。如果 JSONPath 查询返回多个值,则会引发解析错误。
下表列出支持的比较运算符:
比较运算符名称 |
比较运算符 |
示例(括号符号) |
示例(点记法) |
注释 |
等于 |
|
|
|
该查询返回库存中“The Cat in the Hat”的副本数。 |
不等于 |
|
|
|
|
小于 |
|
|
|
例如,对于主动监控工具和主动 APM 组件,如果“The Cat in the Hat”包含少于 3 个副本,则脱机条件将是一个包含“The Cat in the Hat”的字符串。 |
小于或等于 |
|
|
|
|
大于 |
|
|
|
例如,对于主动监控工具和主动 APM 组件,如果“The Cat in the Hat”包含 1 个以上的副本,则脱机条件可以是不包含 1(“The Cat in the Hat”的 bookId)的数字。 |
大于或等于 |
|
|
|
|
长度 |
|
|
|
返回 JSON 数组的长度。 |