如何从 Perl 中的 JSON 响应中提取数据
How to pull data from a JSON response in Perl
我有一个 JSON 响应,我需要在 Perl 中对其进行处理以从中提取信息并进行进一步处理。 JSON 文档如下所示:
{
"SITE_1": [
{
"values": [
{
"time": 20170616100000,
"v": 11
}
]
}
],
"SITE_2": [
{
"values": [
{
"time": 20170616100000,
"v": 12
}
}
]
}
我正在尝试使用子程序处理它:
my ($ref) = @_;
foreach my $row (0..$#{$ref}) {
$val = ${$ref}{$site}[0]{values}[0]{v};
Prt('-O',"$val\n"); etc.. etc...
获得 "Not an Array error" 我认为是因为 JSON 中的第一项在 { } 而不是 [ ] 中。
解析数据的最简单方法是什么?
您是在问如何迭代散列的元素吗?
for my $site (keys(%$ref)) {
...
}
我有一个 JSON 响应,我需要在 Perl 中对其进行处理以从中提取信息并进行进一步处理。 JSON 文档如下所示:
{
"SITE_1": [
{
"values": [
{
"time": 20170616100000,
"v": 11
}
]
}
],
"SITE_2": [
{
"values": [
{
"time": 20170616100000,
"v": 12
}
}
]
}
我正在尝试使用子程序处理它:
my ($ref) = @_;
foreach my $row (0..$#{$ref}) {
$val = ${$ref}{$site}[0]{values}[0]{v};
Prt('-O',"$val\n"); etc.. etc...
获得 "Not an Array error" 我认为是因为 JSON 中的第一项在 { } 而不是 [ ] 中。
解析数据的最简单方法是什么?
您是在问如何迭代散列的元素吗?
for my $site (keys(%$ref)) {
...
}