问题标签 [gpath]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 放心的路径无法访问路径中带有数字的元素
在以下(部分)JSON 响应中:
我正在尝试像这样访问 fromDate 的值:
但是当涉及到路径表达式中的数字时,它会失败,有什么办法可以解决这个问题吗?
java.lang.IllegalArgumentException:无效的 JSON 表达式:Script1.groovy:1:意外令牌:3226186 @ 第 1 行,第 40 列。
xml - 传递 XML 路径并评估
我正在做一个项目,我需要解析一个 XML 文件并在 100 个不同的 XML 路径/节点上执行完全相同的代码。我的代码目前看起来像这样……</p>
由于“要做的事情”和异常的“事情”每次都完全相同,唯一改变的是我正在使用的节点。因此,我宁愿将节点表达式发送到方法或像这样扩展节点类......</p>
通过方法尝试,我无法弄清楚如何将 XPath 传递给该方法然后使用它。使用类扩展方法,只要节点实际存在,它就可以工作。如果没有,我在尝试调用 myProcess 时会出错。
有任何想法吗?
json - Groovy GPath 中的转义点
我在 Java 中使用RestAssured框架,其文档包含此注释
请注意,“json 路径”语法使用Groovy 的 GPath表示法,不要与 Jayway 的 JsonPath 语法混淆。
我需要验证以下 JSON:
并且选择器喜欢
_source.logSource.logger.name
或
_source.logSource.logger.name[0]
不返回任何结果。
我认为这是由于logger.name
属性中的点。如果没有进行转义,logger.name
则解释为好像name
在 下logger
,这是不正确的。
如何正确转义 GPath 中的点字符,以便将logger.name
其视为单个属性名称?
谢谢!
xml - 有没有更好的方法使用 Groovy Gpath 在 xml 中查找祖先?
请查看我下面的常规代码,该代码按预期工作-但想知道是否有更好的方法来获取祖先信息?
我的示例 xml 记录:
我想知道是否有更好的方法来优化这一点获得祖先?
我的方法:
按预期输出:
json - 请放心,使用 Gpath 查询会报错“参数“...”已使用但未定义。使用 JsonPath.params(...) 定义参数”
我是新来的放心,我目前正在使用它以便在我们的测试框架中实现它。
我面临的问题是从 REST 响应中的 Json 数组中提取对象。
我正在使用的示例 json:
到目前为止我尝试过的事情:
这个断言有效
但我正在尝试实际获取特定数组项的 Json
两种方式都试过(一种被注释掉了)。但我得到一个错误:
xml - 如何使用 XMLPath 获取 XML 的属性值?
我有一个 XMLPath 对象,我希望获取某些节点的属性名称。例如,
对于这个 XML,获取属性的 XMLPath 表达式是Location
什么md:SingleLogoutService
?
我可以使用以下内容获取 md:EntityDescriptor 的 entityID:entityId=metadataXml.get("md:EntityDescriptor.@entityID")
但是对于我想要得到的 Location 属性
我得到的输出是[]
,仅此而已。
java - 嵌套对象上的 GPath
我不确定我在这里做错了什么,我正在努力让它正常工作。使用这个 JSON:
例如,我无法提取作者年龄为 45 岁的书籍。我已经尝试过以下方法(使用books
文档根集)
我仍然取回所有具有年龄项目的记录。它可以是任意对象,它可能没有author
记录等。我希望book
返回根对象。
我觉得我错过了一些非常明显的东西,但文档似乎只涵盖了一级键值。也许它不支持它?
谢谢!
xml - 在 GPath groovy 语句中使用 AND 子句来获取匹配 >1 个条件的所有 xml 节点
我是 Groovy / GPath 的新手,并且正在将它与 RestAssured 一起使用。我需要一些有关查询语法的帮助。
给定以下 xml 片段:
我可以提取所有座位号如下:
如何提取 AllowChild="true" 的所有座位号?
我试过了:
它抛出:
什么是正确的语法?
xml - Groovy 使用 GPath Slurper 获取 XML 属性的值
需要解析包含标题上下文中的属性的 XML 文档。
我想使用groovy.util.slurpersupport.GPathResult
.
我找到了一种可行的方法,但我不相信它是正确的,因为我正在选择contextItem
,幸运的是第一个是我感兴趣的:
所有用作位置文本的尝试都Channel
无法检索到值。不幸的是,我被束缚在使用 GPath 作为一个非常大的 Groovy 脚本的一部分,我被要求修改它做很多其他的事情。
有人可以告诉我实现这一目标的正确方法是什么吗?
xml - 在外部存储 GPath 表达式
我正在使用 groovy 处理一些 XML,并且我已经阅读了以下教程http://groovy-lang.org/processing-xml.html。我了解如何替换节点,但我想做的是将这些 gpath 表达式存储在一个文件中,并在运行时将它们读入以“检测”诸如 url、数据库连接属性之类的内容,并根据需要替换节点值/属性。
有谁知道这是否可能?
[编辑] 请求示例