我是SoapServer中的新手,这是我发现的简单文档和示例代码。在生成SoapServer之后我得到了这个结果:
<SOAP-ENV:Envelope>
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>WSDL generation is not supported yet</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
这是我简单的WSDL源代码:
说明:我在本地主机中的文件名是:wsdl_sample1.php
<?php
class MyAPI {
function hello() {
return "Hello";
}
}
$options=array('uri'=>'http://localhost/wsdl_sample1.php?wsdl');
$server = new SoapServer(NULL,$options);
$server->setClass('MyAPI');
$server->handle();
echo "SOAP Server started";
?>
如何更改此代码以解决问题。感谢。
答案 0 :(得分:0)
您提供的url(http://localhost/wsdl_sample1.php?wsdl
)应指向有效的WSDL文件(可以找到有关WSDL的教程here)
PHP本身不支持WSDL生成。但是,Zend Framework的类可以:请参阅Zend Framework's Zend_Soap_Autodiscover
否则,您将无法创建自己的wsdl。您可能会使用Online WSDL Generator之类的在线WSDL生成器来帮助您解决问题。
古德勒克!