J'ai un tableau JSON qui contient 4 objets, chacun avec un nom de domaine. id
champ. Le quatrième objet contient deux enfants qui possèdent également chacun un champ id
champ. Je veux seulement obtenir les identifiants des 4 enfants du niveau supérieur ; je ne veux pas les identifiants des enfants du 4ème élément.
Il s'agit d'une version simplifiée de la chaîne JSON :
[
{
"id": 709709537
},
{
"id": 1104067257
},
{
"id": 2961327618
},
{
"id": 9066007668,
"photo": {
"id": 461295287,
"thumbnails": [
{
"id": 461295307
}
]
}
}
]
Utilisation de JSONPath, $..id
me donnera les 6 éléments id, sans possibilité de déterminer de quel niveau ils proviennent, par ex.
[
709709537,
1104067257,
2961327618,
9066007668,
461295287,
461295307
]
Je m'attendais $.id
pour me donner les 4 niveaux supérieurs id
des enfants, mais ça ne me donne rien.
J'ai fait des recherches sur de nombreuses pages et tenté plusieurs expériences en utilisant des testeurs JSON (par ex. https://jsonpath.curiousconcept.com/ ) et ne trouve pas d'expression JSONPath pour obtenir uniquement les 4 premiers éléments d'identification des enfants.
Existe-t-il une expression JSONPath qui me permette d'obtenir uniquement les identifiants des enfants du niveau supérieur ?