0

由于 php SoapClient对象,我正在尝试调用 magento api 方法。

问题是称为创建 magentos 产品的方法可能相对较长(最多 2 分钟)。我需要获取此方法的返回值,但一段时间后,soap 调用停止并返回 null。

$session_id = _get_session_id();
$client = new SoapClient($api_url . '&SID=' . $session_id, array('trace' => 1));

try {           
    $session = $client->login($api_user, $api_password);
    $result = $client->call($session, 'api_call.method', array($arg1, $arg2);
}
catch(SoapFault $soapFault) {
...
}

我真的需要得到被调用的方法返回值,不管它需要什么时间。

你知道为什么调用会在一段时间后返回 null 吗?

是否有可以配置的默认超时?

4

1 回答 1

0

这是一个解决方案,感谢 Jürgen 评论:

ini_set('default_socket_timeout', 120); // 2 minutes

这将呼叫超时设置为 2 分钟

于 2012-09-11T13:43:38.950 回答