我正在使用SOAP::Lite模块调用 Web 服务,如下所示:
my $som = $soap->call('ns:xxx' =>
(
SOAP::Data->name('ns:data' =>
\SOAP::Data->value(
SOAP::Data->name('username')->type('')->value($username),
)
)
)
);
那没起效。所以我使用 SOAPUI 工具调用 Web 服务来查看 xml 结构。
然后我在调试模式下运行我的代码(使用 SOAP::Lite 'debug'),查看创建的 xml 并与 SOAPUI 工具的 xml 进行比较。唯一的区别是 SOAPUI xml 包含 CDATA 标记,如下所示:
<![CDATA[
xml
]]>
搜了一下发现是用CDATA来防止特殊字符引起的错误
如何使用 Perl 代码添加此标签?