如何在REST :: Client模块中打印responseXpath()的内容

时间:2011-12-14 10:40:44

标签: perl rest xpath xml-libxml

我正在使用REST::Client perl模块来测试我的REST服务器。我想像往常一样打印REST响应xml

目前我正在使用

print $client->responseContent() 

在一行中打印xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><ns2:messageReference xmlns:ns2="urn:com:test:xml:rest:mds:1"><messageId>775775</messageId></ns2:messageReference>

REST::Client模块还会按$client->responseXpath()返回正文内容的xpath上下文,但我找不到使用toString() XML::LibXML函数的方法,它允许<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ns2:messageReference xmlns:ns2="urn:com:test:xml:rest:mds:1"> <messageId>775775</messageId> </ns2:messageReference> 按我的意愿打印:

{{1}}

1 个答案:

答案 0 :(得分:1)

$ client-&gt; responseContent()按原样输出响应,如果你想美化它,请使用XML :: LibXML

my $dom = XML::LibXML->load_xml(string => $client->responseContent());
print $dom->toString();