当我的Web服务关闭时,Nusoap不会抛出异常

时间:2010-07-16 22:02:35

标签: php .net iis web-services nusoap

我在我的“服务器A”上运行了一个Php应用程序,它使用托管在我的“服务器B”上的.NET Web服务。出于某种原因,有时我的“B服务器”上的IIS无法响应,并且在我的Php Web应用程序上花费60秒来加载webservice调用所在的页面。我希望能够改变这60秒,因为我的客户等待的时间太长了。此外,如果有办法捕捉到某种异常,那就太棒了。

我尝试过类似的东西,但如果Web服务没有响应,NuSOAP不会抛出任何异常:

 try {
     return $client->call("GetTopSellersFromCategory", $params);
 }
 catch (Exception $ex) {
      return "error";
 }

提前感谢您提供的任何帮助

1 个答案:

答案 0 :(得分:0)

正在寻找此问题的另一种解决方案,我发现了http://phptoys.com/e107_plugins/content/content.php?content.41

在调用webservice上的webmethods之前,我只是使用该函数来检查我的web服务器是否正在运行。如果正在运行,则进行SOAP调用(使用NuSOAP),如果是DOWN则执行解决方法...但是您可以随时调整fsockopen函数上的timeout参数,以使应用程序更快地为页面提供服务。