我正在发送RPC :: XML请求并获得正确的回复。但是不知道如何以正确的方式解析响应。这是我的代码:
use RPC::XML;
use RPC::XML::Client;
my $value = "something";
my $rpc_value = RPC::XML::string->new($value);
my $req = RPC::XML::request->new('service.makeGood',$rpc_value, $URL);
my $client = RPC::XML::Client->new($CLI);
my $responce =$client->send_request($req);
当我为Dumper做回应时,我看到以下内容:
$VAR1 = bless( [
bless( do{\(my $o = 0)}, 'RPC::XML::boolean' ),
bless( do{\(my $o = 'some reply')}, 'RPC::XML::string' )
], 'RPC::XML::array' );
我如何解析bless( do{\(my $o = 0)}, 'RPC::XML::boolean' )
的价值?所以我需要看看它是否属实。
答案 0 :(得分:0)
在数据结构上使用value()
方法。
答案 1 :(得分:0)
value() - 有效。
也可以使用 simple_request()代替 send_request()返回值数组。 以下变体是相同的:
my $responce = $client->send_request($req);
my $value = @$responce[0]->value();
或
my $responce = $client->simple_request($req);
my $value = @$responce[0];