如何在groovy中从json对象获取值

如何在groovy中从json对象获取值,groovy,soapui,Groovy,Soapui,我的回应是: def RawRecordsDateRangeResponse = context.expand('${getRawRecordsForDateRange#Response}') log.info RawRecordsDateRangeResponse 在这里,我想从json响应键获取日期值。您的响应表示json文档,并将其存储在类型为String的变量中。您可以使用类解析它。考虑下面的例子: import groovy.json.JsonSlurper def R

我的回应是:

def RawRecordsDateRangeResponse = context.expand('${getRawRecordsForDateRange#Response}')   
    log.info RawRecordsDateRangeResponse

在这里,我想从json响应键获取日期值。

您的响应表示json文档,并将其存储在类型为
String
的变量中。您可以使用类解析它。考虑下面的例子:

import groovy.json.JsonSlurper
def RawRecordsDateRangeResponse=context.expand(“${getRawRecordsForDateRange#Response}”)
def json=new JsonSlurper().parseText(RawRecordsDatangeResponse)
def url=json.“2018-09-03”
println url
输出:

{"2018-09-03":"https://dhap-dconnect-telemetry-data-dev2.s3.amazonaws.com/ULT/d83350d2-af56-11e8-b612-0242ac11001118/temperature/raw-2018-09-03.json"}

如果它只是您需要的JSON消息的键,而不是值,您可以使用以下内容:

https://dhap-dconnect-telemetry-data-dev2.s3.amazonaws.com/ULT/d83350d2-af56-11e8-b612-0242ac11001118/temperature/raw-2018-09-03.json
这将生成
[2018-09-03]

def link=json.collect({it.value})以类似方式打印json值。
import groovy.json.JsonSlurper

def rawRecordsDateRangeResponse = '''{"2018-09-03":"https://dhap-dconnect-telemetry-data-dev2.s3.amazonaws.com/ULT/d83350d2-af56-11e8-b612-0242ac11001118/temperature/raw-2018-09-03.json"}'''
def json = new JsonSlurper().parseText(rawRecordsDateRangeResponse)

def date = json.collect({it.key})
print date