轉自 https://blog.csdn.net/xinyflove/article/details/51152563
--
當使用soap
$url = "http://********?wsdl";
$objSoapClient = new SoapClient($url);
創建一個對象的時候,有時候會出現
SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://********?wsdl' : failed to load external entity "http://********?wsdl"
可能是因為接口不穩定。
解決方案,建議使用try
$url = "http://********?wsdl";
try{
$objSoapClient = new SoapClient($url);
} catch (Exception $e) {
print $e->getMessage();
}
這樣就不會在生產代碼運行時,接口不穩定,造成報錯。
後期使用發現不是接口的問題,可能是php soap的問題。具體是為什麼我也不清楚,經過查找資料。使用nusoap會比較好點,至少沒發生這個問題。
nusoap下載地址
我的資源nusoap0.9.5
<?php
require_once("nusoap.php");
$url = "http://*****?WSDL";
$client = new nusoap_client($url, "wsdl");
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = false;
$client->xml_encoding = 'UTF-8';
$client->call('function_name', $param);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
這樣應該就可以解決這個問題了。
--
留言列表