如何使用nusoap消费在线网络服务?

时间:2014-07-03 10:55:54

标签: php web-services soap wsdl nusoap

最近,我一直在尝试使用nusoap来使用在线网络服务。我已经成功使用nusoap在本地创建Web服务器和Web客户端。我已经能够使用我的客户端在我在localhost中创建的服务器上调用soap请求 现在,我正在尝试使用nusoap客户端,以便向在线服务器发送soap请求。特别是,我一直在尝试向“http://www.herongyang.com/Service/Hello_WSDL_11_SOAP.wsdl”发送一个soap请求,这是一个活动的wsdl文件。

$client=new nusoap_client("http://www.herongyang.com/Service/Hello_WSDL_11_SOAP.wsdl");
  echo $response = $client->call('Hello', "Hello from client.");
  echo 'do we reach here'.$response;  

教程中给出的代码是

   <?php 
# SOAP_Hello.php
# Copyright (c) 2009 by Dr. Herong Yang, herongyang.com
# All rights reserved
   $client = new SoapClient(
      "http://www.herongyang.com/Service/Hello_WSDL_11_SOAP.wsdl");
   echo $client->Hello("Hello from client.");
?> 

这不使用nusoap - 但希望对看到这个问题的人有所帮助。教程的链接是http://www.herongyang.com/WSDL/PHP-SOAP-Configure-and-Test-SOAP-Extension.html。我想知道我是否在某种程度上滥用了nusoap的语法,或者我的localhost客户端无法通过互联网发送请求。我在一个通用肥皂客户端生成器上在线检查,该站点处于活动状态,请求的参数是“Hello”。

1 个答案:

答案 0 :(得分:0)

在call方法中,函数的参数应该是一个数组。

   echo $response = $client->call('Hello', array('parameter'=>'Hello from client'));

其中parameter是函数输入中使用的参数名称