4

basicHttpを介して接続できるWCFWebサービスがありますが、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を使用して呼び出しようとすると、ページがしばらくロードされたままになり、最終的にエラー「ErrorFetchinghttpheaders」が返されます。これは正確にはどういう意味で、どうすれば修正できますか?(.Netクライアントからのサービスの利用は完全に機能します。)

4

2 に答える 2

6

wsHttpBindingのデフォルト設定では、バニラPHPSoapClientでは理解できない高度なWS-SecurityおよびWS-Addressing機能が使用されます。動作する可能性のある他のPHPアクセス可能なSOAPクライアント(たとえば、Apache Axis2 + Rampart / C)があります。または、互換性のないwsHttpBinding機能の一部をシャットオフすることもできます(メッセージセキュリティがおそらく最初です)。うまくいかないというわけではありませんが、すべてを正しく機能させるには、おそらく試行錯誤が必要です。

于 2009-12-21T05:39:00.613 に答える
0

私が最後にチェックしたとき、phpはサポートしていませんでしたwsHttpBinding

于 2009-12-19T15:53:46.277 に答える