问题标签 [jsonslurper]

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.

0 投票
1 回答
96 浏览

jenkins - 我如何解析具有 json 的文本文件并获取数组元素

我正在尝试使用 json 解析文本文件并从 jsonArray 中获取元素之一。下面是我试图解析的 json

下面是我在 jenkinsfile 中的 groovy 实现

我收到此错误消息 -

0 投票
1 回答
376 浏览

json - 遍历 JSONObject

我现在正在编写一个 groovy 脚本,而且我是 groovy lang 的新手。

我有 Json 对象,就像这样:

我需要遍历这个 Json 对象。此对象中的项目数可能不同,例如“sixthVar”。我知道 Java 中的解决方案,并且在 groovy 中需要类似的东西:

或者也许有一些方法可以将 Json 对象转换为 Json 数组?

0 投票
2 回答
1345 浏览

java - 如何列出 json 字段名称和值?

请帮我找出问题所在。我用 groovy 编程(你可以使用 java 示例,它看起来像那里)。Json 来到输入,其中不知道有多少字段。可能有 5 个字段,可能有 10 个,也可能有 50 个。我的任务是处理这个 json 并使用以下方法返回数据:

如果我知道传入的 json,那么我会提前设置所需的字段名称,“String”的数量,并通过引用特定的 json 字段返回它们的值。下面的示例显示了 3 个 json 字段:auto、home、job。因此,每个字段的 3 倍“字符串”并引用特定字段以返回 it.auto、it.home、it.job 的值。但是,如果我不知道传入的 json,我该怎么做呢?

也许值得将传入 json 的所有字段名称收集到一个列表中,并指定一个与字段编号相同的“字符串”列表(任何传入 json 的所有字段都只有“字符串”)?但是如何做到这一点,然后我应该如何传递字段值(它。***)?

0 投票
1 回答
487 浏览

json - Groovy:JSON 解析

看到一个有趣的问题,不确定这与解析器或它假设的解析方式有关。任何帮助表示赞赏

输出 :

解析的对象应该与字符串相同,但所有值都转换为映射的数组列表。

知道为什么会生成这样的对象吗?当这被发送到 camunda 它抱怨

org.camunda.bpm.engine.ProcessEngineException:无法序列化变量“排除”中的对象:groovy.json.internal.LazyMap

0 投票
1 回答
201 浏览

java - 在groovy(java)中如何自动找出json字段类型并从json返回值,用空格替换null?

这个问题仍然是相关的!

在我的任务中,json 是我的输入,我事先并不知道。我需要将所有 json 字段类型收集到“类型”中,并使用reader.outputLines. 现在json字段类型的列表是这样形成的: def types = list.find (). Values ​​() *. GetClass () *. SimpleName 但是当第一个json块中的相同字段为null时,我遇到了一个问题,而在第二个中,整数和类型被定义为null,而不是整数。

  1. 如何确保通过遍历每个字段的所有 json 块来确定类型,而不是根据第一个块进行输出,如果所有内容均为 null 或“”(空),则分配默认字符串?
  2. 使用 json 从 json 返回值时reader.outputLines,将 null 替换为“”(空)?
0 投票
1 回答
133 浏览

java - 在我的 groovy (java) 示例中如何自动检测 json 字段类型?

在我的任务中,我处理传入的 json 并使用 ResultSetReader 将数据作为数据集返回。所有类型都必须写入“类型”。它们现在定义如下:def types = list.find (). Values ​​() *. GetClass () *. SimpleName

但是这里有两个问题:

  1. 如果在 json 的第一个块中某个字段有“null”,而在下一个块中有一个数字,则类型写为“null”,而不是“Integer”。

  2. 如果在所有的json块中,某人的字段都是“null”,那么就写“null”,你需要默认写,比如“String”,这样程序就不会停止工作。

    我该怎么做?恳请您不要重写我所有的代码,而是专门针对这个问题提供建议。"Types" 应该只包含格式 ["String", "Integer", "String"] 的类型(例如)。

    无需告知类型将是 [NameJSON: String, NameJSON: Integer, NameJSON: Sting],因为在这种情况下我不能使用 ResultSetReader。

0 投票
2 回答
200 浏览

json - 如何使用 jmeter 打开和更新 json 文件,然后运行批处理脚本

我正在使用 jmeter 5.3 并且我得到了我的 jmeter 测试,它使用来自预先创建的 JSON 文件的数据。我想让 jmeter 在每次测试运行之前创建这个文件。这包括:

  1. 打开现有的 JSON 文件
  2. 更新此文件中的某些值
  3. 保存并关闭文件
  4. 运行批处理文件
  5. 运行测试

前 4 个步骤应该只执行一次,即使我为更多用户运行测试。(我想我可以为此使用额外的线程)

我尝试使用这种代码,但它不起作用。

0 投票
0 回答
49 浏览

groovy - 无法通过循环访问 JSONSlurper 数组对象

我正在尝试使用 Groovy 访问 Jira Rest API。(而且这个问题不是 Jira 特有的。)

连接没有问题;我可以得到我想要的 JSON 数据。

当我尝试遍历数据中的 JSON 数组时;我失败了。但是,如果我尝试在指定索引处访问 JSON 数组的值;我可以得到数据。

对于不知道 JSON 的人来说,它是这样的:

我错过了什么?

0 投票
0 回答
146 浏览

java - 如何在 Groovy 中查询 JSON 对象,仅使用 Groovy 或本机 Java 库

我尝试了几种不同的方法来做到这一点。我有一个用 JSONSlurper 解析的 JSON 字符串,看起来像这样,我想用 key==StoreID2 获取值。

使用 JSONPath,我可以得到这样的值:$.EmailData.MessageRecords[0].FieldData[?(@.key=="StoreID2")].value 但看起来 Groovy 没有可用的 JSONPath,没有加载我试图避免的非本地库 (com.jayway.jsonpath.JsonPath.parse)。

这实际上是解决方案:

谢谢

0 投票
1 回答
244 浏览

groovy - Groovy JsonSlurper - 如何检查空值与缺失字段?

我正在使用 Groovy 的 JsonSlurper 解析 JSON 字符串。我想了解如何(1)检查字符串中是否缺少字段或(2)其值是否设置为空。这是我的代码:

不幸的是,这并不能告诉我该字段是否丢失或者它是否存在值为 null。我怎么知道呢?