0

PHP SoapClientオブジェクトのおかげで、magento api メソッドを呼び出そうとしています。

問題は、create 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

ユルゲンのコメントのおかげで、これが解決策です:

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

これにより、通話のタイムアウトが2分の長さに設定されました

于 2012-09-11T13:43:38.950 に答える