在没有WSDL页面的情况下执行SoapClient __soapCall

时间:2015-12-03 17:13:05

标签: php soap wsdl soap-client

我正在使用SOAP API,并且他们已经禁用了通常位于SOAP API基本.asmx URL中的WSDL文档。在没有XML请求的情况下查看时,页面是404页面。现在,只是实例化SoapClient失败($soap = new SoapClient($url);,错误是Premature end of data in tag html line 1)。我假设SoapClient的新实例尝试从服务器检索WSDL。有办法解决这个问题吗?在说'我想使用SoapClient,但在我告诉你你正在使用的XML电话(以及所有必需的数据)之前不要做任何电话?

编辑:我已尝试将cache_wsdl设为WSDL_CACHE_NONE,但我仍然遇到错误。

1 个答案:

答案 0 :(得分:0)

您必须在非wsdl模式下运行SoapClient,因此必须将SoapClient c' tor的wsdl参数设置为null

public SoapClient::SoapClient ( mixed $wsdl [, array $options ] )

按以下方式初始化

$client = new SoapClient(null, array('location' => http://your_domain/your_webservice",
                                     'uri'      => "http://namespace_of_the_webservice/"));

location...The location of the webservice
uri...The namespace of the target webservice