0
我試圖解決SoapClient似乎沒有將參數插入到SOAP請求中的問題。PHP&SoapClient:SOAP請求中缺少的參數
簡單測試未能在與網站相同的服務器上運行,即Windows 8 Server和IIS 7.1上的PHP 5.3.13。這一直在兩天前最近纔開始工作,但現在失敗了。我不知道更新以外的服務器安裝有任何更改。
function simpleTest(){
$client = new SoapClient("http://server-sql:78/PCIWCTest/Service1.svc?wsdl", array("trace" => 1));
$result = $client->__soapCall("GetData",
array('GetData'=> array('parameters'=> 'Hello')),
array('soapaction' => 'http://server-sql:78/PCIWCTest/GetData'));
$requXML = $client->__getLastRequest();
$respXML = $client->__getLastResponse();
debug($requXML);
debug($respXML);
}
產生的請求($ requXML)是:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/"><SOAP-ENV:Body><ns1:GetData/></SOAP-ENV:Body></SOAP-ENV:Envelope>
我假設應該有字符串 '你好' 的
<SOAP-ENV:Body><ns1:GetData/></SOAP-ENV:Body>
標記之間,對不對?
在使用soap __call進行故障排除期間,我一直在使用許多不同的方法,結果相同。服務器已重新啓動。我嘗試了所有我能想到並嘗試的方法。
有沒有人看過這個或有想法?
直接在'client'對象上調用「GetData」方法會產生相同的問題結果?我假設你正在使用'__'方法來調試,對吧? – DeaconDesperado
是的,是的。 $ client - >(GetData,$ params)產生相同的結果。我也嘗試根據一些建議對參數進行設置,並將參數封裝在另一個陣列中無濟於事。 –