我有一个perl应用程序,它将XMLRPC请求发送到服务器,作为回报,我需要一个服务器生成的令牌。问题在于,当应用程序仍然是perl程序(.pl)VS时,应用程序的行为会有所不同。在它被转换为可执行文件(.exe)之后
问题出在哪里,perl app xmlrpc_test.pl
发送我的登录信息如下
use XML::RPC;
....
my $server = "https://....";
my $xmlrpc = XML::RPC->new($server);
my $user = "userid";
my $password = "password";
my @args = ($user, $password);
my $token = $xmlrpc->call("login", \@args);
....
如果我直接运行这个perl应用程序,我会得到一个没有问题的令牌。
但是,如果我尝试用PP包装它(我在这里调用wxpar,但它与pp相同):
wxpar -M XML::TreePP -M LWP::UserAgent -M HTTP::Lite -o xmlrpc_test.exe xmlrpc_test.pl
从命令行我得到以下输出:
no data at XML/RPC.pm line 255
.exe退出/崩溃。
据我所知,XML :: RPC调用函数在$ response变量中返回null,这是导致错误的原因。
我是否错过了通过-M字段包含一个包? PP运行没有任何问题,.exe已成功生成。除了发送XMLRPC请求之外,一切都运行良好...最令人费解的是为什么它以.pl形式工作而不是.exe形式......
感谢任何帮助!