从 JSON 字符串中获取特定字符串,其中 "string" = x |自由标记

Get a specific string from JSON string where "string" = x | Freemarker

我的问题如下。我从 api 调用中得到一个 JSON 字符串,看起来像这样:

我一直想知道快递员取件的时间戳

这里的根本问题是在字符串的“事件”分支中拾取的数字并不总是相同的。但“代码”始终是 3.0 或类似的东西。如果“事件”总是在同一个地方,那将不是问题。然后我可以做点什么,这只是一个例子,像这样:

<#assign someParsed = responseContent?eval_json>
${someParsed.parcels[0].events[0].timestamp}

那么如果位置不总是在同一个位置,如何获取代码的底线呢?

假设总是有一个代码3.0(否则你当然需要测试它),你可以这样做:

${someParsed.parcels[0].events?filter(it -> it.code == '3.0')[0].timestamp}