小编Lau*_*ema的帖子

在Perl中解析JSON字符串

我们有一个带有返回JSON字符串的API的设备.我希望能够访问JSON的特定部分,但我无法弄清楚如何使语法工作.

use strict;
use warnings;
use CGI qw(:standard);
use LWP::Simple;
use JSON qw(decode_json);
use Data::Dumper;

my $json_request = 'http://<device ip>/API?method=Display:Input:Status:All:Get';
my $raw_json = get $(json_request)
print($raw_json) 
# Output: {"result":{"0":{"status":false},"1":{"status":false},"2":{"status":false},"3":{"status":false},"4":{"type":"unknown","status":true}},"jsonrpc":"2.0"} 
Run Code Online (Sandbox Code Playgroud)

我尝试过使用JSON库的decode_json函数以及Data :: Dumper,但这是我得到的:

print(Dumper(decode_json($raw_json)));
# Output: $VAR1 = { 'jsonrpc' => '2.0', 'result' => { '4' => { 'status' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ), 'type' => 'unknown' }, '1' => { 'status' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ) }, '3' => { 'status' => $VAR1->{'result'}{'1'}{'status'} }, …
Run Code Online (Sandbox Code Playgroud)

perl parsing json

0
推荐指数
1
解决办法
306
查看次数

标签 统计

json ×1

parsing ×1

perl ×1