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

发布于 2024-12-21 07:01:44 字数 898 浏览 0 评论 0原文

我正在使用 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-> 返回正文内容的 xpath 上下文;responseXpath(),但我找不到将其与 XML::LibXML 中的 toString() 函数一起使用的方法,该函数允许按照我的方式打印它想:

<?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>

I'm using REST::Client perl module to test my REST server. I want to print REST response as usual xml

Currently I'm using

print $client->responseContent() 

which prints xml in one line:

<?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>

The REST::Client module also returns xpath context for the body content by $client->responseXpath(), but I cannot find a way to use it with toString() function from XML::LibXML, which allows to print it as I want:

<?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>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小忆控 2024-12-28 07:01:44

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

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

$client->responseContent() outputs the response as is, if you would like to beautify it use XML::LibXML

my $dom = XML::LibXML->load_xml(string => $client->responseContent());
print $dom->toString();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文