PHP SoapClient 超时
2022-08-30 13:00:20
SoapClient 请求是否要超时并引发异常。截至目前,我得到PHP服务器响应超时,在我的情况下是60秒。基本上,我想要的是,如果在特定时间内没有来自Web服务的任何回复,则会引发异常,我可以捕获它。60秒的警告不是我想要的。
SoapClient 请求是否要超时并引发异常。截至目前,我得到PHP服务器响应超时,在我的情况下是60秒。基本上,我想要的是,如果在特定时间内没有来自Web服务的任何回复,则会引发异常,我可以捕获它。60秒的警告不是我想要的。
ini_set("default_socket_timeout", 15);
$client = new SoapClient($wsdl, array(......));
connection_timeout选项定义连接到 SOAP 服务的超时(以秒为单位)。此选项不为响应速度较慢的服务定义超时。若要限制等待呼叫完成的时间,可以使用default_socket_timeout设置。
虽然 Andrei 链接到一个不错的解决方案,但这个解决方案的代码较少,但得到了一个很好的解决方案:
* 使用 PHP5 SoapClient Extension 处理超时(由 Antonio Ramirez;2010 年 2 月 2 日)
示例代码:
//
// 设置连接超时(示例中为 15 秒)
//
$client = new SoapClient($wsdl, array(“connection_timeout” = > 15));
还有流上下文,如果你需要更细粒度的HTTP控制。请参阅新的 SoapClient()
Docs 的选项。在表面下使用HTTP和SSL传输。stream_context
SoapClient