1
重新編輯以重新構建新信息。PHP無法使用SoapClient或file_get_contents訪問WSDL文件
我想通過PHP訪問SOAP API。 API的應用程序託管在我的公司網絡上,並且WS在端口8080上公開。
我可以在我的瀏覽器(加載速度非常快)上訪問http://network-machine.local:8080/service?wsdl上的WSDL文件。但是,下面的代碼片段只是導致的最長執行時間一個致命的錯誤超出:
new SoapClient('http://network-machine.local:8080/service?wsdl');
file_get_contents('http://network-machine.local:8080/service?wsdl');
PHP可以訪問其他遠程服務(包括WSDL)。
如果我將wsdl文件(及其導入的文件)保存到本地計算機並更新引用,PHP可以很好地訪問API服務。它只是無法拉入WSDL。
所以,我認爲這是某種網絡/防火牆問題。有任何想法嗎?
編輯更多的信息:
cURL工作得很好。使用cURL,我可以獲得WSDL文件的總大小。當我使用該大小作爲file_get_contents的MAXLENGTH參數時,該函數也可以正常工作。
我沒有加載本地WSDL文件的任何問題。 – gazareth 2014-11-17 13:45:35