我正在使用PHP的内置SoapServer类来实现Web服务。我需要在WSDL代码的以下部分中设置location属性:
<wsdl:service name="serviceName">
<wsdl:port name="serviceNameSoap" binding="tns:serviceNameSoap">
<soap:address location="MY_URL_HERE" />
</wsdl:port>
<wsdl:port name="serviceNameSoap12" binding="tns:serviceNameSoap12">
<soap12:address location="MY_URL_HERE" />
</wsdl:port>
</wsdl:service>
以编程方式执行此操作的最佳方法是什么?
答案 0 :(得分:0)
如果位置可以更改,则将其保存在配置文件或数据库中的某个位置并执行
str_replace('MY_URL_HERE', 'http://localhost/service')
在返回之前,在WSDL文件上。
答案 1 :(得分:0)
另一种方法是从客户端覆盖我们的Web服务的位置,例如:
$soapClient->__setLocation('http://www.example.com/soapservice');