簡體   English   中英

通過wsHttpBinding在PHP中調用WCF WebService

[英]Calling a WCF WebService in PHP via wsHttpBinding

我有一個WCF web服務,我可以通過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客戶端使用該服務非常有效。)

wsHttpBinding上的默認配置使用了vanilla PHP SoapClient無法理解的高級WS-Security和WS-Addressing功能。 還有其他PHP可訪問的SOAP客戶端可能能夠工作(例如Apache Axis2 + Rampart / C),或者您可以嘗試關閉一些不兼容的wsHttpBinding功能(消息安全性可能是第一個)。 並不是說它不起作用,但你可能需要一些反復試驗才能使它全部正常工作。

我最后一次檢查,php不支持wsHttpBinding

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM