/ / Auf JSON-Objekte in Perl zugreifen und sie in einem anderen JSON wiederverwenden - json, perl, mason

Auf JSON-Objekte in Perl zugreifen und sie in einem anderen JSON wiederverwenden - json, perl, mason

Ich habe in meinem Maurer-Handler Argumente erhalten, die in folgendem Format aussehen:

$data = {
"cacheParams" => 0,
"requests" => {
"locationId" => 1,
"uniqueId" => [
"ABC",
"DEF",
"XYZ"
]
}
};

Ich kann auf die Anfragen zugreifen, indem ich $data["requests"]. Wie greife ich auf die in Anforderungen gespeicherten Werte zu, z. B. locationId und uniqueId? Ich muss diese Werte verwenden, um ein weiteres JSON auf folgende Weise zu bilden:

my $input = {
stateID => 44,
locationId => requests.locationId,
uniqueId => requests.uniqueId
.
.
.

}

Antworten:

2 für die Antwort № 1

Das $data["requests"] Das Objekt sollte auf Ihre Art ein Hash sein. So können Sie wie folgt auf die Schlüssel zugreifen:

$data["requests"]->{"locationId"}
$data["requests"]->{"uniqueId"}

or

$requests = $data["requests"]
$locationId = $requests->{"locationId"}
$uniqueId = $requests->{"uniqueId"}