gpt4 book ai didi

web-services - Perl:无法将 xml 数据发布到 Web 服务

转载 作者:行者123 更新时间:2023-12-04 19:35:33 25 4
gpt4 key购买 nike

Web 服务接受 xml 数据并再次返回 xml 中的值。我正在尝试将 xml 数据发布到 Web 服务,但没有成功,我需要使用 Perl 来完成。以下是我试过的代码:

use SOAP::Lite ;
my $URL = "http://webservice.com:7011/webServices/HealthService.jws?WSDL=";
my $xml_data = '<Request>HealthCheck</Request>' ;
my $result = SOAP::Lite -> service($xml_data);
print $result ;

我尝试了另一种使用代理的方法:

use SOAP::Lite +trace => 'debug';
my $URI = 'webServices/HealthService' ;
my $URL = "http://webservice.com:7011/webServices/HealthService.jws?WSDL=" ;
my $test = SOAP::Lite -> uri($URI)
-> proxy($URL) ;
my $xml_data = '<Request>HealthCheck</Request>' ;
my $result = $test -> healthRequest($xml_data);
print $result ;

然而,这会引发以下错误:

Can't locate class method "http://webservice.com:7011/healthRequest" via package "SOAP::Lite\" at 7.pl line 4. BEGIN failed--compilation aborted at 7.pl line 4.

网络服务只提供一种方法HealthRequest。我不确定为什么它试图在 SOAP:Lite 中找出类方法。对于这两种方法,我都遇到了同样的错误。

是否有任何其他方法可以使用 Perl 实现相同的目的?

最佳答案

尝试这样的事情,我还没有测试过所以只是测试看看会发生什么,你至少应该不会得到 PM 错误。

 use strict;
use SOAP::Lite;
my $xml_data = '<Request>HealthCheck</Request>' ;
my $soap = SOAP::Lite
->uri("webServices/HealthService")
->proxy("http://webservice.com:7011/webServices/HealthService.jws?WSDL=");
print $soap->service($xml_data),"\n";

关于web-services - Perl:无法将 xml 数据发布到 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17185280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com