使用Groovy脚本在JSON响应中声明对象数

时间:2019-06-10 13:58:43

标签: groovy

我有一个问题,如何断言element_count等于响应对象的数量。

API的链接为https://api.nasa.gov/neo/rest/v1/feed?start_date=2019-05-10&end_date=2019-05-16&api_key= *******

我尝试使用下面的代码,但是尝试使用grrovy脚本从JSON响应中计算对象没有运气。

import groovy.json.JsonSlurper
def ResponseMessage = messageExchange.response.responseContent
def response = new JsonSlurper().parseText(ResponseMessage)
def elementCount = response.element_count
def idCount = response.count { it.equals('neo_reference_id') }

我正在尝试计算应等于element_count的neo_reference_id的数量。任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

def url =  new URL('https://api.nasa.gov/neo/rest/v1/feed?start_date=2019-05-10&end_date=2019-05-16&api_key=***')
def response = new groovy.json.JsonSlurper().parse( url )
def neo_references = response.near_earth_objects.collectMany{date,objects-> objects.collect{it.neo_reference_id} }
println neo_references
println neo_references.size()
assert response.element_count == neo_references.size()