我使用SOAP :: Lite调用Web服务。它给出了以下错误:
not well-formed (invalid token) at line 7, column 16, byte 281 at /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi/XML/Parser.pm line 187
在输出的第7行,我认为有土耳其字符引起了这个问题。我可以看到终端的输出。它从以下行开始:
<?xml version="1.0" ?>
没有编码参数。如何将输出编码值设置为UTF-8? 我在调用Web服务时尝试了以下操作,但它不起作用:
my $soap = SOAP::Lite
-> on_action( sub { join '/', @_ } )
-> readable(1)
-> uri('xxx')
-> proxy("http://xxx")
-> ns("http://schemas.xmlsoap.org/soap/envelope/","soapenv")
-> ns("xxx","yyy");
$soap->serializer()->encodingStyle("utf-8");