我有一个WCF网络服务,我可以通过basicHttp连接到它,但不是wsHttp。我尝试通过wshttp通过以下方式连接到它:
$service = new SoapClient
("http://service.companyname.local:6666/Service/?wsdl",
array(
"location" => "http://service.companyname.local:6666/Service/WCF",
"trace" => true,
'soap_version' => SOAP_1_2
)
);对SoapClient构造函数的调用返回正常。当我尝试使用$client->FunctionName调用时,页面只是在那里加载了很长一段时间,并最终返回错误"Error Fetching http headers“。这到底是什么意思,我该如何修复它?(从.Net客户端使用服务可以很好地工作。)
发布于 2009-12-21 13:39:01
wsHttpBinding上的default config使用了高级的WS-Security和WS-Addressing特性,而普通的PHP SoapClient无法理解这些特性。还有其他可以通过PHP访问的SOAP客户机(例如,ApacheAxis2+Rampart/C),或者您可以尝试关闭一些不兼容的wsHttpBinding特性(消息安全性可能是第一个)。这并不是说它不会工作,但您可能需要进行一些反复试验才能让所有工作都正常进行。
发布于 2009-12-19 23:53:46
据我所知,php不支持wsHttpBinding
https://stackoverflow.com/questions/1933234
复制相似问题