groovy JMeter常规:如何从属性以数字开头的json中获取属性值

30byixjq  于 2022-11-01  发布在  其他
关注(0)|答案(1)|浏览(145)

我确实有下面的字符串,我用JsonSlurper()将其解析为json。

{"id":"1111","fields":{"2_attribute":"111111","3_attribute":"11122222","4_attribute":"1111222211"}

我在JSR 223预处理器中使用groovy脚本,通过以下代码log.info("attribute2 :" + json2.fields.2_attribute);获取属性“2_attribute”的值,并获得以下异常:

2022-06-01 13:18:25,491 ERROR o.a.j.m.JSR223PreProcessor: Problem in JSR223 script, JSR223 PreProcessor2
javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script197.groovy: 24: Number ending with underscores is invalid @ line 24, column 50 @ line 24, column 50.
   age_type_id:" + json2.fields.2_attribute

我如何才能获得该值?属性命名不能更改。

  • 谢谢-谢谢
dluptydi

dluptydi1#

我认为您需要用引号将2_attribute括起来,因为Groovy对象名称不能以数字开头。

def theValueIamLookingFor = new groovy.json.JsonSlurper().parse(prev.getResponseData()).fields."2_attribute"

演示:

更多信息:

相关问题