我使用基於Soap的Web服務查詢PHP和2個本地智能手機應用程序(ios和android),在webservice開發團隊進行了一些編輯之後,在PHP方面被打破,但從智能手機應用程序沒有問題。解決SoapFault異常:[HTTP]無法解析URL
這裏是一個簡單的腳本來重現問題
<?php
error_reporting(E_ALL);
$url = 'http://www.xxxxx.com/service.awws?wsdl';
$sKey = 'thekey';
$client= new SoapClient($url, array('trace' => 1,
'exception' => 1,
'encoding' => 'UTF-8',
'cache_wsdl' => WSDL_CACHE_NONE));
$params = array('sKey' => $sKey, 'nLangID' => 1);
$res = $client->TPGetLocalisationVersion($params);
echo '<pre>Res : ';
print_r($res);
echo '</pre>';
?>
我得到以下錯誤:
Fatal error: Uncaught SoapFault exception:
[HTTP] Unable to parse URL in /home/xxxx/www/test.php:14 Stack trace: #0 [internal function]:
SoapClient->__doRequest('__call('TPGetLocalisati...', Array) #2 /home/tmpweb/www/test.php(14):
SoapClient->TPGetLocalisationVersion(Array) #3 {main} thrown in /home/xxxx/www/test.php on line 14
方法TPGetLocalisationVersion存在和參數是否正確。這個代碼在幾天前用於工作。
我也可以使用wget從PHP Webserver獲取wsdl。
我用一些在線工具測試了WSDL文件,看起來沒問題。
任何建議來調試呢?我敢肯定,我
能你在wsdl中看到''或''? –
Wrikken
2013-03-06 13:53:18