Bonjour à toi petit visiteur du net :-)

Voici mon problème:

Données JSON que je reçois:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
    "response": {
        "message": null,
        "exception": null,
        "context": [
            {
                "headers": null,
                "name": "device_sylvain_1_vol",
                "children": [
 
                ],
                "parent": "/clusters/cluster-1/virtual-volumes",
                "attributes": [
                    {
                        "value": "1310720",
                        "name": "block-count"
                    },
                    {
                        "value": "4096B",
                        "name": "block-size"
                    },
                    {
                        "value": "synchronous",
                        "name": "cache-mode"
                    }
                ],
                "type": "virtual-volume"
            }
        ],
        "custom-data": null
    }
}
J'aimerais uniquement récupérer le HASH "attributes" voir même directement une de ses valeurs via son nom...

J'ai essayé plein de syntaxe et autre mais rien y fait :-(

Mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
@resultat = &get(\@src_headers,$src_url);
my $decoded = decode_json($resultat[2]);
my $hash_ref = $decoded->{'response'}->{'context'}->{'attributes'};
print "$hash_ref";
Ce print n'est là que pour voir ma HASH key après je peux la déférencer.

Retour du code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Not a HASH reference at ./test.pl line 98, <STDIN> line 1. #ERREUR LIGNE 4 DANS L'EXEMPLE
Je n'y comprend plus rien et les tuto JSON sont vraiment pas très clair...
La doc du CPAN sort même d'une autre planète à mon avis :-)

Merci d'avance et bonne journée