【发布时间】:2012-12-14 07:39:41
【问题描述】:
我正在使用SoapClient 调用一些网络服务。我正在寻找一种机制,可以帮助我在网络服务离线或关闭时向用户显示一些错误。
因为我必须等待一段时间(15 秒)才能向用户显示任何错误。我像这样在SoapClient 中添加connection_timeout,用于超时。
$this->client = new SoapClient($clienturl,array('trace' => 1,
'exceptions'=> 1,
'connection_timeout'=> 15)); //$clienturl is webservice url
在页面的顶部,我也添加了这一行,
ini_set("default_socket_timeout", 15); // 15 seconds
在特定的超时间隔之后,我会像这样得到不同的SOAP-ERROR,
SOAP-ERROR: Parsing WSDL: Couldn't load from $clienturl
所以我正在寻找一个错误处理程序来处理这些SOAP-ERROR,以便以人类可读的格式向用户显示这些错误处理程序,例如“服务器已关闭,过一段时间再试一次”。或者有没有办法处理超时错误?
【问题讨论】:
-
$clienturl是外部网址吗?是https吗? -
@noslone 是的。 $clienturl 是外部的,不是 https。
-
在浏览器中输入url会发生什么?
-
@noslone 它的 web 服务 url,所以它给了我所有相关的信息,比如功能信息。等,当它起来。但是当它下降时,它什么也没有显示。
标签: php soap-client