Utilizzando il ashphy json path evaluator, e la seguente JSON:Problemi comporre interrogazione jsonpath per restituire primo oggetto di una matrice filtrato
{ "store": {
"book": [
{ "category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{ "category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{ "category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{ "category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
}
}
Vorrei scrivere una query che filtra categoria, per esempio "fiction", e quindi restituire solo il primo elemento. Non riesco proprio a capirlo.
Per esempio, $..book[?(@.category == "fiction")]
, restituirà una serie di 3 libri, ma voglio solo il primo libro:
{ "category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
}
si può fare ?? La cosa ovvia sembrava essere quella di aggiungere un "[0]" alla fine, ma non funziona.
Grazie, ma non è quello che sto cercando: jsonPath restituisce un array e [0] accede al primo elemento dell'array. Ho bisogno di jsonPath per filtrare un elemento. Non ho accesso diretto all'array. – Blazes